parallel and distributed computing for an adaptive visual ...uhl/pdivm3/krueger.pdfparallel and...

25
Chair of Technical Computer Science - RWTH Aachen University Prof. Dr.-Ing Karl-Friedrich Kraiss April 26th, 2003 Thomas Krüger Parallel and Distributed Computing for an Parallel and Distributed Computing for an Adaptive Visual Object Retrieval System Adaptive Visual Object Retrieval System Thomas Krüger, Jochen Wickel, and Karl-Friedrich Kraiss

Upload: others

Post on 24-Feb-2021

6 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 2: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

Parallel and Distributed Computing for Axiom

2

OutlineOutline

Introduction Related Work System Description Dataflow Concept Distributed Processing Experimental Results Conclusion

Page 3: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

Parallel and Distributed Computing for Axiom

3

Visual Object RetrievalVisual Object Retrieval

Kamera

Ergebnis

IntelligentElectronicCatalogue

camera

result

Page 4: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 5: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 6: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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)

Page 7: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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)

Page 8: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 9: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 10: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

Parallel and Distributed Computing for Axiom

10

Programming PanelProgramming Panel

Page 11: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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))

Page 12: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 13: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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)

Page 14: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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)

Page 15: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 16: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 17: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 18: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 19: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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)

Page 20: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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)

Page 21: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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)

Page 22: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 23: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

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

Page 24: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

Parallel and Distributed Computing for Axiom

24

Future WorkFuture Work

automatic data flow graph analysis improve load balancing mechanism evaluation of system scalability

Page 25: Parallel and Distributed Computing for an Adaptive Visual ...uhl/PDIVM3/Krueger.pdfParallel and Distributed Computing for Axiom 11 FORCS Code (let contour (features.SegmentationKernel

Parallel and Distributed Computing for Axiom

25

LTILib LTILib URLURL

http://ltilib.sourceforge.net/