EuroPar 2009 - 27th Aug 2009 -...

51
STKM ON SCA: A UNIFIED FRAMEWORK WITH COMPONENTS, WORKFLOWS AND ALGORITHMIC SKELETONS Marco Aldinucci Computer Science Dept. University of Torino - Italy Marco Danelutto Computer Science Dept. University of Pisa - Italy Hinde-Lilia Bouziane Project-team GRAAL INRIA Rhône-Alpes - ENS Lyon - France Christian Pérez Project-team GRAAL INRIA Rhône-Alpes - ENS Lyon - France EuroPar 2009 - 27th Aug 2009 - Delft

Transcript of EuroPar 2009 - 27th Aug 2009 -...

Page 1: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM ON SCA: A UNIFIED FRAMEWORK WITH

COMPONENTS, WORKFLOWS AND ALGORITHMIC SKELETONS

Marco AldinucciComputer Science Dept.University of Torino - Italy

Marco DaneluttoComputer Science Dept.University of Pisa - Italy

Hinde-Lilia BouzianeProject-team GRAAL

INRIA Rhône-Alpes - ENS Lyon - France

Christian PérezProject-team GRAAL

INRIA Rhône-Alpes - ENS Lyon - France

EuroPar 2009 - 27th Aug 2009 - Delft

Page 2: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

OUTLINE

• Introduction• Software component models

• Existing models• STCM: a spatio-temporal component model

• Skeletons based models for parallel programming

• STKM: a proposal of skeletons introduction in STCM• A SCA-based implementation of STKM

• Overview of SCA

• A projection of STKM on SCA

• Experiments• Conclusions and future works

2

Page 3: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

CONTEXT & APPROACH

• Programming simply and independently from execution resources

• Complex applications• Size, Heterogeneity• Different applicative domains• Reuse• Reuse of legacy code• Explicit control of dependencies

• Approach: component models• Examples: CCM (OMG), GCM (NoE CoreGrid),

SCA (OSOA), CCA (CCA Forum-USA), etc.

3

Page 4: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

CONTEXT & APPROACH

• Programming simply and independently from execution resources

• Complex applications• Size, Heterogeneity• Different applicative domains• Reuse• Reuse of legacy code• Explicit control of dependencies

• Approach: component models• Examples: CCM (OMG), GCM (NoE CoreGrid),

SCA (OSOA), CCA (CCA Forum-USA), etc.

3

Page 5: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

CONTEXT & APPROACH

• Programming simply and independently from execution resources

• Complex applications• Size, Heterogeneity• Different applicative domains• Reuse• Reuse of legacy code• Explicit control of dependencies

• Approach: component models• Examples: CCM (OMG), GCM (NoE CoreGrid),

SCA (OSOA), CCA (CCA Forum-USA), etc.

4

Page 6: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

COMPONENTS & WORKFLOWS

•Low-level of abstraction• Behavior is hidden in the assembly • Component assembly model very close to computing resources

A B CA B C

time

ABC

Spatial dependency(resource dependency - complex design)

Temporal dependency(resource usage - resource overcomsumption)

Component Assembly Workflow5

Page 7: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

COMPONENTS & WORKFLOWS

•Low-level of abstraction• Behavior is hidden in the assembly • Component assembly model very close to computing resources

A B CA B C

time

ABC

Spatial dependency(resource dependency - complex design)

Temporal dependency(resource usage - resource overcomsumption)

Component Assembly Workflow5

Page 8: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

COMPONENTS & WORKFLOWS

•Low-level of abstraction• Behavior is hidden in the assembly • Component assembly model very close to computing resources

A B CA B C

time

ABC

Spatial dependency(resource dependency - complex design)

Temporal dependency(resource usage - resource overcomsumption)

Component Assembly Workflow

active

running

active

5

Page 9: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

BIG PICTURE

6

Componentsspatial dependenciesrequire co-allocation

Workflowstemporal dependencies

admit scheduling

STCMspatio-temporal

component model

Page 10: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

BIG PICTURE

6

Componentsspatial dependenciesrequire co-allocation

Workflowstemporal dependencies

admit scheduling

STCMspatio-temporal

component model

Behavioral Skeletonsparametric assembliescomponent factories

autonomic QoS management

STKMspatio-temporal

model with skeletons

Page 11: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

ServicesSCA/Tuscany

components as services

STKMSCA

implementation

BIG PICTURE

6

Componentsspatial dependenciesrequire co-allocation

Workflowstemporal dependencies

admit scheduling

STCMspatio-temporal

component model

Behavioral Skeletonsparametric assembliescomponent factories

autonomic QoS management

STKMspatio-temporal

model with skeletons

Page 12: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

OUTLINE

• Introduction• Software component models

• Existing models• STCM: a spatio-temporal component model• Skeletons based models for parallel programming

• STKM: a proposal of skeletons introduction in STCM• A SCA-based implementation of STKM

• Overview of SCA

• A projection of STKM on SCA

• Experiments• Conclusions and future works

7

Page 13: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

STCM (EUROPAR 08)

• Combination of component and workflow models• Spatial and temporal dimensions at

the same level of assembly

• Component-task• Spatial ports (classical ones)• Input and output ports (temporal)• Task

• Assembly model• Adaptation of a workflow language

temporal

spatial8

STCMcomp

Bouziane, H., Pérez, C., Priol, T.: A Software Component Model with Spatial and Temporal Compositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference. Vol. 5168., Las Palmas de Gran Canaria, Spain, Springer (August 2008) 698–708

Page 14: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

STCM (EUROPAR 08)

• Combination of component and workflow models• Spatial and temporal dimensions at

the same level of assembly

• Component-task• Spatial ports (classical ones)• Input and output ports (temporal)• Task

• Assembly model• Adaptation of a workflow language

temporal

spatial8

STCMcompSTCMcomp

Bouziane, H., Pérez, C., Priol, T.: A Software Component Model with Spatial and Temporal Compositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference. Vol. 5168., Las Palmas de Gran Canaria, Spain, Springer (August 2008) 698–708

Page 15: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

STCM (EUROPAR 08)

• Combination of component and workflow models• Spatial and temporal dimensions at

the same level of assembly

• Component-task• Spatial ports (classical ones)• Input and output ports (temporal)• Task

• Assembly model• Adaptation of a workflow language

step 3

A

D

B C

step 1

parallel step 2out/in

out/in

temporal

spatial8

STCMcompSTCMcomp

Bouziane, H., Pérez, C., Priol, T.: A Software Component Model with Spatial and Temporal Compositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference. Vol. 5168., Las Palmas de Gran Canaria, Spain, Springer (August 2008) 698–708

Page 16: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

ALGORITHMIC SKELETONS (COLE 1989)

• Structured programming (simplicity/correctness of programs)

• Hide the complexity of parallelism setup and data distribution

• Behavioral skeletons (advanced management for adaptation)

pipe p in (int a) out (float b) p1 in (a) out (float b1) p2 in (b1) out (int b2) p3 in (b2) out (b)end pipe

farm f in (int af) out(int bf) w in (af) out(bf)end farmpipe pp in (float a) out(float b) pp1 in (b) out (int b1) f in (b1) out (b2) pp3 in (b2) out (b)end pipe

p1 p2 p3

intfloat floatpipe p

float

int

pp1 C pp3E

w

w

...

float

int int

int float

farm fpipe pp

9

Page 17: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

OUTLINE

• Introduction• Software component models

• Existing models• STCM: a spatio-temporal component model

• Skeletons based models for parallel programming

• STKM: a proposal of skeletons introduction in STCM• A SCA-based implementation of STKM

• Overview of SCA

• A projection of STKM on SCA

• Experiments• Conclusions and future works

10

Page 18: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

OBJECTIVES

•Bringing together suited properties• Code reuse facility (Component models)• Capability of resources usage optimization (Workflows)• Simplicity of programming parallel parts of an application

(Skeletons)

•Portability on different execution resources• Code reuse• Efficiency

11

Page 19: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

STKM (CBHPC 08) - ASSEMBLY MODEL 1/2

• Extension of STCM • Assembly language with skeletons

constructs (pipe and farm)

• An STKM skeleton construct • Is a composite with a predefined behavior• Parameters

• Skeleton’s input/output data• User’s components

• Can be exploited in spatial and temporal dimension

step 3

A B

step 1

parallel step 2

p1 p2 p3

pipe

M. Aldinucci, M. Danelutto, H. L. Bouziane, and C. Pérez. Towards software component assembly language enhanced with workflows and skeletons. In Proc. of the ACM SIGPLAN Component-Based High Performance Computing (CBHPC), pages 1–11, New York, NY, USA, Oct. 2008. ACM.

12

STKMcomp

Page 20: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

STKM (CBHPC 08) - ASSEMBLY MODEL 1/2

• Extension of STCM • Assembly language with skeletons

constructs (pipe and farm)

• An STKM skeleton construct • Is a composite with a predefined behavior• Parameters

• Skeleton’s input/output data• User’s components

• Can be exploited in spatial and temporal dimension

step 3

A B

step 1

parallel step 2

p1 p2 p3

pipe

M. Aldinucci, M. Danelutto, H. L. Bouziane, and C. Pérez. Towards software component assembly language enhanced with workflows and skeletons. In Proc. of the ACM SIGPLAN Component-Based High Performance Computing (CBHPC), pages 1–11, New York, NY, USA, Oct. 2008. ACM.

12

STKMcomp

Page 21: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

STKM (CBHPC 08) - ASSEMBLY MODEL 1/2

• Extension of STCM • Assembly language with skeletons

constructs (pipe and farm)

• An STKM skeleton construct • Is a composite with a predefined behavior• Parameters

• Skeleton’s input/output data• User’s components

• Can be exploited in spatial and temporal dimension

step 3

A B

step 1

parallel step 2

p1 p2 p3

pipe

step 3

step 1

p1

p2

p3

pipe

M. Aldinucci, M. Danelutto, H. L. Bouziane, and C. Pérez. Towards software component assembly language enhanced with workflows and skeletons. In Proc. of the ACM SIGPLAN Component-Based High Performance Computing (CBHPC), pages 1–11, New York, NY, USA, Oct. 2008. ACM.

12

Page 22: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

STKM (CBHPC 08) - ASSEMBLY MODEL 2/2

component Example{ … Step1 and Step3 components…

farm step2{ inputSkel double inS2; outputSkel string outS2;

worker sequential w { inputSkel double inW; outputSkel string outW; component Worker{streamIn double inW; streamOut string outW; }; connect outW to Worker.outW; connect Worker.inW to inW; };

instances: Step1 step1; Step2 step2; Step3 step3; … Connections step1 <=> step2 <=> step3 …sequence ApplMain{ exectask(step1); exectask(step2); exectask(step3);};

step3

step1

wfarm

step2

wwww

13

Page 23: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

SKELETONS: USER’S VIEW & IMPLEMENTATION

S1

Sn

...

pipe

w

farmwwwW

S1

Sn

...

sequence

S1

pipe

... Sn

14

Page 24: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

SKELETONS: USER’S VIEW & IMPLEMENTATION

S1

Sn

...

pipe

w

farmwwwW

S1

Sn

...

sequence

S1

pipe

... Sn

14

S1

Sn

...

E C

W

W

MGR

...

S1 ... Sn

S1

proxy1

Sn

proxy

...

Page 25: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

internal components are created when

needed, then either destroyed or not

all internal components are

created at once

SKELETONS: USER’S VIEW & IMPLEMENTATION

S1

Sn

...

pipe

w

farmwwwW

S1

Sn

...

sequence

S1

pipe

... Sn

14

S1

Sn

...

E C

W

W

MGR

...

S1 ... Sn

S1

proxy1

Sn

proxy

...

Page 26: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

EXECUTION EXAMPLE: SEQUENCE

S1

proxy12

time

S1

proxy12

proxy23

proxy34

S2

t3

t4

proxy4x

15

S1

proxy1

Sn

proxy

...

Page 27: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

EXECUTION EXAMPLE: SEQUENCE

S1

proxy12 proxy12

proxy23

S2

time

S1

proxy12

proxy23

proxy34

S2

t3

t4

proxy4x

15

S1

proxy1

Sn

proxy

...

Page 28: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

EXECUTION EXAMPLE: SEQUENCE

S1

proxy12 proxy12

proxy23

S2

proxy23

proxy34

t3

time

S1

proxy12

proxy23

proxy34

S2

t3

t4

proxy4x

15

S1

proxy1

Sn

proxy

...

Page 29: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

EXECUTION EXAMPLE: SEQUENCE

S1

proxy12 proxy12

proxy23

S2

proxy23

proxy34

t3

proxy34

t4

proxy4x

time

S1

proxy12

proxy23

proxy34

S2

t3

t4

proxy4x

15

S1

proxy1

Sn

proxy

...

Page 30: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

OUTLINE

• Introduction• Software component models

• Existing models• STCM: a spatio-temporal component model

• Skeletons based models for parallel programming

• STKM: a proposal of skeletons introduction in STCM• A SCA-based implementation of STKM

• Overview of SCA• A projection of STKM on SCA

• Experiments• Conclusions and future works

16

Page 31: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

SERVICE COMPONENT ARCHITECTURE

• Open SOA collaboration 2007

• A component model for services composition• Independent from any technology

• Models specifications for• Assembly, client, component implementation, packaging and deployment

SCAcomponent

References(use ports)

Services(provided ports)

Proprieties(Extra-functional ports)

Implementation(Java, C, C++, BPEL, etc.)

17

Page 32: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

SERVICE COMPONENT ARCHITECTURE

• Open SOA collaboration 2007

• A component model for services composition• Independent from any technology

• Models specifications for• Assembly, client, component implementation, packaging and deployment

18

Page 33: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

SERVICE COMPONENT ARCHITECTURE

• Open SOA collaboration 2007

• A component model for services composition• Independent from any technology

• Models specifications for• Assembly, client, component implementation, packaging and deployment

wiresService

Java, C++ interface, WSDL, ...

ReferenceJava, C++ interface,

WSDL, ...

Property

composite

18

Page 34: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

MAPPING STKM ONTO SCA

ATMCA eLC

19

TMC = Task Management ControllereLC = Extended Lifecycle ControllerMGR = Autonomic Manager

Page 35: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

MAPPING STKM ONTO SCA

ATMCA eLC

19

TMC = Task Management ControllereLC = Extended Lifecycle ControllerMGR = Autonomic Manager

A

TMCA eLC

Page 36: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

MAPPING STKM ONTO SCA

ATMCA eLC

19

TMC = Task Management ControllereLC = Extended Lifecycle ControllerMGR = Autonomic Manager

A

TMCA eLC

wfarm

W

wwwW

C

W

W

MGR

TMC

...E

eLC

Page 37: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

OUTLINE

• Introduction• Software component models

• Existing models• STCM: a spatio-temporal component model

• Skeletons based models for parallel programming

• STKM: a proposal of skeletons introduction in STCM• A SCA-based implementation of STKM

• Overview of SCA

• A projection of STKM on SCA

• Experiments• Conclusions and future works

20

Page 38: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

EXPERIMENTAL EVALUATION

• Aim• Test the feasibility of the approach and measure basic overheads of SCA

implementation

• SCA implementation• Java 1.5 + Tuscany Java SCA version 1.2.1• Adaptation for dynamicity requirements

• Benchmark• Sequence, loop, pipeline and nested composition of pipeline and functional

replication behavioral skeleton• Different types and sizes of tasks (time, data)

• Resources• Cluster of 24 Intel Pentium 3, 800MHz, 1GB RAM, 100MBit/s Ethernet

21

Page 39: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

METRICS

Intra-nodeInter-component

Inter-nodeIntra-host

Inter-nodeinter-host

Default SCA protocol 0.076 20.35 20.17

Web Service protocol 22.66 24.23 24.11

Time(S)

Remote node launching(with ssh + common daemon library)

45.56

Programmed port connection (ad_hoc API) 3.20

Dynamic deployment overheads (S)

Round Trip Time depending on components’ placement (mS)

22

Page 40: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

ADAPTATION CAPABILITY: SEQUENCE

t1

(20 S)

t4

(20 S)

t3

(20 S)

t2

(20 S)

4 Nodes (4 PEs)requires

co-allocationsequence

8 Nodes(8 PEs)

4 Nodes(4 PEs)

2 Nodes(2 PEs)

1 Node(1 PE)

23

Page 41: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

ADAPTATION CAPABILITY: SEQUENCE

t1

(20 S)

t4

(20 S)

t3

(20 S)

t2

(20 S)

4 Nodes (4 PEs)requires

co-allocationsequence

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

8 Nodes(8 PEs)

4 Nodes(4 PEs)

2 Nodes(2 PEs)

1 Node(1 PE)

t1

proxy12

t2

proxy23

t3

proxy34

t4

proxy4x

t1

t2

t3

t4

23

Page 42: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

ADAPTATION CAPABILITY: SEQUENCE

t1

(20 S)

t4

(20 S)

t3

(20 S)

t2

(20 S)

sequence

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

t1

proxy12

t2

proxy23

t3

proxy34

t4

proxy4x

t1

t2

t3

t4

Eff (%) 51.14 27.03 20.13 28.38 28.50

24Eff = Computation time - setup overheads

4 Nodes (4 PEs)requires

co-allocation

8 Nodes(8 PEs)

4 Nodes(4 PEs)

2 Nodes(2 PEs)

1 Node(1 PE)

Page 43: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

ADAPTATION CAPABILITY: SEQUENCE

t1

(20 S)

t4

(20 S)

t3

(20 S)

t2

(20 S)

sequence

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

t1

proxy12

proxy23

t2

proxy34

t3

t4

proxy4x

t1

proxy12

t2

proxy23

t3

proxy34

t4

proxy4x

t1

t2

t3

t4

Eff (%) 51.14 27.03 20.13 28.38 28.50

24Eff = Computation time - setup overheads

4 Nodes (4 PEs)requires

co-allocation

8 Nodes(8 PEs)

4 Nodes(4 PEs)

2 Nodes(2 PEs)

1 Node(1 PE)

Page 44: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

IDIOM RECOGNITION (LOOP)

25

for (i=0; i<size; i++)

t1

(20 S)

t4

(20 S)

t3

(20 S)

t2

(20 S)

Efficiency = Computation time - overheadsEfficiency = Computation time - overheadsEfficiency = Computation time - overheads

size 10 100

sequence with creation and destructioncomponents are created on demand 28.40 28.40

sequence with creationcomponent are created once on demand 56.16 90.68

pipelinedall components are created at startup 76.96 95.90

Page 45: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

DYNAMIC ADAPTION

26

t1

(10 S)

t4

(5 S)

t3

(5 S)

t2

(30 S)

a b c

Page 46: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

DYNAMIC ADAPTION

26

t1

(10 S)

t4

(5 S)

t3

(5 S)

t2

(30 S)

t1

(10 S)

t4

(5 S)

t3

(5 S)

w

farmwwwW

t1

(10 S)

t4

(5 S)

t3

(5 S)

w

farm

(autonomic)

wwwW

a b c

Page 47: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

DYNAMIC ADAPTION

26

t1

(10 S)

t4

(5 S)

t3

(5 S)

t2

(30 S)

t1

(10 S)

t4

(5 S)

t3

(5 S)

w

farmwwwW

t1

(10 S)

t4

(5 S)

t3

(5 S)

w

farm

(autonomic)

wwwW

case: loop with size 100 time (S)

pipeline 3105 a

pipeline with farm (3 workers)

1182 b

pipeline with autonomicfarm

1403 c

a b c

Page 48: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

ADAPTATION CAPABILITY: FARM

• Can dynamically change the number of workers as result of the monitored state• Workers can be created, destroyed, stopped, started, migrated• Can support stateful workers via ports supporting internal data

serialization

• Widely experimented with CoreGRID GCM components

• M. Aldinucci, S. Campa, M. Danelutto, M. Vanneschi, P. Dazzi, D. Laforenza, N. Tonellotto, and P. Kilpatrick. Behavioural skeletons in GCM: autonomic management of grid components. In D. E. Baz, J. Bourgeois, and F. Spies, editors, Proc. of Intl. Euromicro PDP 2008: Parallel Distributed and network-based Processing, pages 54–63, Toulouse, France, Feb. 2008. IEEE.

• M. Aldinucci, M. Danelutto, and P. Kilpatrick. Autonomic management of non-functional concerns in distributed and parallel application programming. In Proc. of Intl. Parallel & Distributed Processing Symposium (IPDPS), pages 1–12, Rome, Italy, May 2009. IEEE.

27

Page 49: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

CONCLUSIONS

•A combination of component models, workflows and skeletons

•Previous works• STCM: merging component models with workflows• Skeleton models• STKM proposal (theoretical study)

•Contributions• STKM prototype on SCA• Performance evaluation

•Simplicity of design and adaptation capabilities28

Page 50: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

STKM on SCA - EuroPar 2009

PERSPECTIVES

•Generic skeletons constructs for easy extension with new skeletons• Ongoing work (PhD in the GRAAL project-team)

•Framework implementation for automatic generation of assemblies at execution• Model driving engineering• Choice and decisions techniques

•Applications implementation• Using more recent and advanced frameworks

29

Page 51: EuroPar 2009 - 27th Aug 2009 - Delftcalvados.di.unipi.it/storage/talks/2009_STKM_EuroPar.pdfCompositions for Grid Infrastructures. In: Proc. of the 14th Intl. Euro-Par Conference.

THANK YOU

Marco AldinucciComputer Science Dept.University of Torino - Italy

Marco DaneluttoComputer Science Dept.University of Pisa - Italy

Hinde-Lilia Bouziane & Christian PérezProject-team GRAAL

INRIA Rhône-Alpes - ENS Lyon - France

Christian PérezProject-team GRAAL

INRIA Rhône-Alpes - ENS Lyon - France