Parallel-Horus

coleslawokraSoftware and s/w Development

Dec 1, 2013 (3 years and 8 months ago)

81 views

High
-
Performance Distributed Multimedia
Computing

Frank Seinstra, Jan
-
Mark Geusebroek

Intelligent Systems Lab Amsterdam

Informatics Institute

University of Amsterdam


MultimediaN (BSIK Project)

MultimediaN and DAS
-
3


Van Essen et al.
Science 255,
1999.

MultimediaN and high
-
performance computing

A Real Problem, part 1…


News Broadcast
-

September 21, 2005 (
see video1.wmv
)


Police investigating over 80.000 (!) CCTV recordings


First match found no earlier than 2.5 months after
July 7 attacks

automatic

analysis?

Image/Video Content Analysis


Lots
of

research + benchmark evaluations:


PASCAL
-
VOC (10,000+ images), TRECVID (200+ hours of video)


A Problem of scale:


At least 30
-
50 hours of processing time per hour of video!


Beeld&Geluid => 20.000 hours of TV broadcasts per year


NASA => over 850 Gb of hyper
-
spectral image data per day


London Underground => over 120.000 years of processing … !!!

High Performance Computing


Solution:


Very, very large scale parallel and distributed computing


New Problem:


Very, very complicated software

Solution:

tool to make parallel &
distributed computing
transparent to user

-

familiar programming

-

easy execution

Wide
-
Area Grid Systems

User


Beowulf
-
type Clusters

Since 1998:


“Parallel
-
Horus”




Parallel
-
Horus: Features (1)



Parallel
-
Horus






Parallelizable Patterns


Sequential programming:

Sequential API

Seinstra et al.,
Parallel Computing
, 28(7
-
8):967
-
993, August 2002


+/
-

18 patterns (MPI)

Parallel
-
Horus: Features (2)


Lazy Parallelization:

Seinstra et al.,
IEEE Trans. Par. Dist. Syst.
, 15(10):865
-
877, October 2004


Don’t do this:

ImageOp

ImageOp

Scatter

Scatter

Gather

Gather

Do this:

ImageOp

Scatter

Avoid Communication

ImageOp

Gather

Extensions for Distributed Computing


Parallel


Horus


Client



Parallel


Horus


Client



Wide
-
Area Multimedia Services:



Parallel


Horus


Server





Parallel


Horus


Servers





Parallel


Horus


Servers




User transparency?


Abstractions & techniques?


Grid connectivity problems?

Color
-
Based Object Recognition (1)


Our Solution:


Place ‘retina’ over input image


Each of 37 ‘retinal areas’ serves as a ‘receptive field’


For each receptive field:


Obtain set of local histograms, invariant to shading / lighting


Estimate Weibull parameters ß and
γ

for each histogram


Hence: scene description by set of 37x4x3 = 444 parameters

+

=

Geusebroek, British Machine Vision Conference, 2006.

Color
-
Based Object Recognition (2)


Learning phase:


Set of 444 parameters is stored in database


So: learning from 1 example, under single
visual setting


Recognition phase:


Validation by showing objects under at least 50 different
conditions:


Lighting direction


Lighting color


Viewing position

“a hedgehog”

Amsterdam Library of Object Images
(ALOI)


In laboratory setting:


300 objects correctly recognized under all (!) visual conditions


700 remaining objects ‘missed’ under extreme conditions only

Geusebroek et al.,
Int. J. Comput. Vis..

61(1):103
-
112, January 2005

See also:
http://www.science.uva.nl/~fjseins/aibo.html

Example: Object Recognition

Example: Object Recognition

Demonstrated live (a.o.) at ECCV 2006, June 8
-
11, 2006, Graz, Austria

(see video2.wmv)

Performance / Speedup on DAS
-
2

0
8
16
24
32
40
48
56
64
0
8
16
24
32
40
48
56
64
Nr. of CPUs
Speedup
linear
client

Recognition on single machine: +/
-

30 seconds


Using multiple clusters: up to 10 frames per second


Insightful: even ‘distant’ clusters can be used
effectively for close to ‘real
-
time’ recognition

0
16
32
48
64
80
96
0
16
32
48
64
80
96
Nr. of CPUs
Speedup
linear
client
Single cluster, client side speedup

Four clusters, client side speedup

Current & Future Work


Very Large
-
Scale Distributed Multimedia Computing:


Overcome practical annoyances:


Software portability, firewall circumvention, authentication, …


Optimization and efficiency:


Tolerant to dynamic Grid circumstances, …


Systematic integration of MM
-
domain
-
specific knowledge, …


Deal with non
-
trivial communication patterns:


Heavy intra
-

& inter
-
cluster communication, …


Reach the end users:


Programming models, execution scenarios, …


Collaboration with VU
(Prof. Henri Bal)

& GridLab


Ibis:

www.cs.vu.nl/ibis/


Grid Application Toolkit:
www.gridlab.org

Conclusions


Effective integration of results from two largely
distinct research fields


Ease of programming => quick solutions


With DAS
-
3 / StarPlane we can start to take on much
more complicated problems


But most of all:


DAS
-
3 very significant for future MM research

The End

(see video3.avi)