parallel and distributed computing for an adaptive visual ...uhl/pdivm3/krueger.pdfparallel and...
TRANSCRIPT
Chair of Technical Computer Science - RWTH Aachen UniversityProf. Dr.-Ing Karl-Friedrich Kraiss
April 26th, 2003Thomas Krüger
Parallel and Distributed Computing for anParallel and Distributed Computing for anAdaptive Visual Object Retrieval SystemAdaptive Visual Object Retrieval System
Thomas Krüger, Jochen Wickel,and Karl-Friedrich Kraiss
Parallel and Distributed Computing for Axiom
2
OutlineOutline
Introduction Related Work System Description Dataflow Concept Distributed Processing Experimental Results Conclusion
Parallel and Distributed Computing for Axiom
3
Visual Object RetrievalVisual Object Retrieval
Kamera
Ergebnis
IntelligentElectronicCatalogue
camera
result
Parallel and Distributed Computing for Axiom
4
RequirementsRequirements
adaptive to meet different requirements• flexibility• modularity
sophisticated algorithms• image processing• classification / AI
support for• parallelism• distribution• heterogeneous environments• load balancing
Parallel and Distributed Computing for Axiom
5
Related Work - Image ProcessingRelated Work - Image Processing
Visual programming environments for computervision and image processing Application Visualization System Khoros / Cantata IrisExplorer WiT, Mavis, VISSION ...
VuSystem Matlab / Simulink, Labview
Parallel and Distributed Computing for Axiom
6
Parallel & Distributed ComputingParallel & Distributed Computing
Multiprocessor systems• Uniform Memory Access (UMA)• Non-Uniform Memory Access (NUMA)• Symmetric Multiprocessors (SMP)
Coupled Computing System• Cluster of Workstations (COW)
• Message Passing Interface (MPI)• Parallel Virtual Machines (PVM)
• Network of Workstations (NOW)
Parallel and Distributed Computing for Axiom
7
Related Work - Load BalancingRelated Work - Load Balancing
Network Operating System Middleware
Network
www.server.com
137.23.34.1 137.23.34.3137.23.34.2
DNS
(a)
Applications,Services
Network
OperatingSystem
HardwareSystem 1
Middleware
OperatingSystem
HardwareSystem 2
(c)
Hardware
Operating System
Applications,Services
RAM I/OCPU
CPU CPU
CPU
Network
(b)
Parallel and Distributed Computing for Axiom
8
The Axiom SystemThe Axiom System
Axiom - Adaptive expert system for intelligentobject mining
Acquisition 2D Features
3D Features
Classification Classification
Combination
CAD Data
Image Processing
Machine Intelligence
3D Visualization
User Interface
Man-Machine InterfaceDistributed Computation
Parallel and Distributed Computing for Axiom
9
Dataflow ConceptDataflow Concept
natural specification:dataflow graph, functional program
C++ library for computer visionobject oriented, encapsulates operationshttp://ltilib.sourceforge.net
Functional Object Retrieval Control Syntax• similar to Scheme language• processing blocks written in Java or C++• sequential functional and parallel dataflow programs
Parallel and Distributed Computing for Axiom
10
Programming PanelProgramming Panel
Parallel and Distributed Computing for Axiom
11
FORCS CodeFORCS Code
(let contour (features.SegmentationKernel image))(let bounded-image (features.BoundingBoxKernel image contour))(let n-img (images.ColorNormalizationKernel bounded-image))(let hrgbl (features.RGBLHistogramKernel n-img))(let chrHist (features.ChromaticityHistogramKernel n-img))(let lnk.1 (images.ImageSplitterKernel n-img))(let r (nth 1 lnk.1))(let g (nth 2 lnk.1))(let ogdoc (features.OGDFeatureKernel r g))(let qmf (features.QmfEnergyKernel n-img))(let ogd2nd (features.OGDFeatureKernel_1 n-img))(let rgbl-r (neural.rbf.Rbf hrgbl))(let chr-r (neural.rbf.Rbf_1 chrHist))
Parallel and Distributed Computing for Axiom
12
Distributed ProcessingDistributed Processing
Subgraph
Computer 1Computer 2
Source
Drain
P D
WW
PP R
data token
waiting for token
Waiting
Ready
Processing
Done
Parallel and Distributed Computing for Axiom
13
Distribution with MiddlewareDistribution with Middleware
Distributed Computing Environment (DCE) Distributed Component Object Model (DCOM) Java Remote Method Invocation (RMI) Microsoft .NET Message Oriented Middleware
Common Object Request Broker Architecture(CORBA)
Parallel and Distributed Computing for Axiom
14
Load balancingLoad balancing
CORBA load balancing request for proposal proprietary solutions simple techniques
TAO (Othman, Schmidt, 2001)VisiBroker (Inprise, 2001), Orbix (Iona, 2000)(Post, 2002), (Lindermeier, 2002),(Schnekenburger, 1997)
Parallel and Distributed Computing for Axiom
15
Communication ArchitectureCommunication Architecture
Monitor one monitor per host software monitoring monitoring of entire host
Monitor
Monitor
ServerObject
Scheduler
request
operations ServerObject
referenceORBServer manager
Load balancer
Parallel and Distributed Computing for Axiom
16
Load balancerLoad balancer
CPU-load and clock rate
server memory and round trip time
CPUActAvgAvgfree flllCPU 1max
RTTRTTfreememfreeCPUges twMEMwCPUwW
IDLENICESYSUSER
TTTffCPUCPU SYSUSER
decaydecaynn
,,,
11
Parallel and Distributed Computing for Axiom
17
TestbedTestbed
Server 1 100% Server 2 69%Server 3 42% Server 4 23%
Scimark2 Benchmark 234%
Server 1 Server 2
1600MHz 1400 MHz
866 MHz 600 MHzServer 3 Server 4
Switch100 MBit/s
Parallel and Distributed Computing for Axiom
18
ScenarioScenario
Axiom training sequence: segmentation of 50 single images extraction of local features from
16 single imagesSciMark 2 Benchmark
all hosts idle one hosts with additional task
)4()1(
)()1()( min
TT
pTTpS
Parallel and Distributed Computing for Axiom
19
Experimental Results (I)Experimental Results (I)
0
50
100
150
200
250
300
Local Random Round Robin Dynamic
Tim
e in
sec
onds
Segmentation (all hosts idle)Segmentation (one host loaded)Feature extraction (all hosts idle)Feature extraction (one host loaded)
Parallel and Distributed Computing for Axiom
20
Experimental Results (II)Experimental Results (II)
0
0,5
1
1,5
2
2,5
Local Random Round Robin Dynamic
Spee
dup
Segmentation (all hosts idle)Segmentation (one host loaded)Feature extraction (all hosts idle)Feature extraction (one host loaded)
Parallel and Distributed Computing for Axiom
21
Experimental Results (III)Experimental Results (III)
0,00
0,50
1,00
1,50
2,00
2,50
3,00
Loca
l
Rando
m
Random Thre
shold
Round R
obin
Dynam
ic
MaxSpee
dup
Type of balancer
Spee
dup
SciMark 2 FFT Benchmark (small)
Parallel and Distributed Computing for Axiom
22
Experimental Results (IV)Experimental Results (IV)
SciMark 2 FFT Benchmark (large)
0,00
0,50
1,00
1,50
2,00
2,50
3,00
Loca
l
Random
Random Thres
hold
Round Rob
in
Dynam
ic
MaxSpee
dup
Type of balancer
Spee
dup
Parallel and Distributed Computing for Axiom
23
ConclusionConclusion
computation architecture for a visual objectretrieval system
visual combination of modular blocks control syntax distributed computing with CORBA-
middleware dynamic load balancing in heterogeneous
environments
Parallel and Distributed Computing for Axiom
24
Future WorkFuture Work
automatic data flow graph analysis improve load balancing mechanism evaluation of system scalability
Parallel and Distributed Computing for Axiom
25
LTILib LTILib URLURL
http://ltilib.sourceforge.net/