being about adaptive grid middleware · • adaptive multi-scale bio-simulation ... maladaptive...

66
Denis Caromel 1 Denis Caromel, et al. www.inria.fr/oasis/ProActive INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF Sept. 30 2004 Being About Adaptive Grid Middleware 1. ’’Being Adaptive’’: Generalities 2. ProActive: Adaptive Features 3. Adaptive Genes: Active Objects-Components vs. MPI

Upload: others

Post on 12-Oct-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 1

Denis Caromel, et al.www.inria.fr/oasis/ProActive

INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUFSept. 30 2004

Being

About Adaptive Grid Middleware

1. ’’Being Adaptive’’: Generalities 2. ProActive: Adaptive Features3. Adaptive Genes: Active Objects-Components vs. MPI

Page 2: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 2

A Few Generalities

on’’Adaptive’’

Page 3: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 3

Dictionary DefinitionsAdaptive, Adaptative:

Having a capacity for adaptation; ’’The adaptive coloring of a chameleon”

==> An entity adapting to the environment’’Auto-adaptive’’: … No ! Pleonasm, already by definition

How to be adaptive? Adaptable ==> Parameterized First: Good Parameterized Strategies and Protocols

– Design– Model, Performance Evaluation, Simulation, Emulation, Benchmarks

Configurable ==> then can become: Effectively Adaptive

Page 4: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 4

Dictionary Definitions (2)

ANTONYM: MaladaptiveShowing faulty adaptation

=> dysfunctional, nonadaptive -- of a trait or conditionFailing to serve an adjustive purpose;

==> Dysfunctional behavior==> Poorly adjusted

So, if your Middleware is adaptive, it can indeed be Maladaptive!

Page 5: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 5

Adaptive Gridsin pictures

Page 6: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 6

What ’’Adaptive Grids’’ used to be

Page 7: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 7

Zooming

Numerical Dendritic Growth (NDG):Modeling Solidification using Phase-Field EquationsSolved by Adaptive Grid Methods

Page 8: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 8

Adaptation in Grid applications:Not only the middleware is being Adaptive

Many applications require adaptive strategies, e.g.:

• Adaptive Numerical Method ==> Mesh Refinement

• Adaptive Multi-scale Bio-simulation

• Adaptive Discretisation Schemes

• …How to make sure

Adaptive Applications do not confuse Adaptive Middelwares ?ending up into … Maladaptive Grid !

Page 9: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 9

What ’’Adaptive Grids’’ are now

Adaptive Middleware for Distributed Sensor Environments

Xingbo Yu, Koushik Niyogi,Sharad Mehrotra, NaliniVenkatasubramanian

University of California, IrvineIEEE Distributed System OnlineMay 2003

Page 10: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 10

’’Adaptive Grids’’ are complex systems

AdaptiveCommunicationControl Middleware "CSC"

NTT Cyber Communication Laboratory

Page 11: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 11

Adaptation in Grid Middleware:Adaptive strategies at many locations:

• Communication transports and strategies• Discovery, Localization, Routing• Fault-Tolerance • Managing Disconnections • Security• Buffering• Scheduling, Load Balancing• …

How to make sure Adaptive Strategy N do not confuse Adaptive Strategy M ?

ending up into … Maladaptive Grid !

Page 12: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 12

2. Adaptivity inProActiveProgramming

ComposingDeploying

W r a p p i n g

Page 13: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 13

A uniform framework: An Active Object patternA formal model behind: Determinism (POPL’04)

Programming Model:• Remote Objects (Classes, not only Interfaces, Dynamic)• Asynchronous Communications, Wait-By-Necessity • Groups, Mobility, Components, SecurityEnvironment:• XML Deployment Descriptors• Interfaced with: rsh, ssh, LSF, PBS, Globus, Jini, SUN Grid Engine

• Graphical Visualization and monitoring: IC2DIn the www. ObjectWeb .org Consortium

(Open Source LGPL)

ProActive:A Java API + Tools for Parallel, Distributed Computing

Page 14: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 14

ProActive modelJava RMI (Remote Method Invocation = Object RPC = o.foo(p) )

plus a few important features:• Sequential Object: a single thread with default FIFO service• No shared passive objects• Asynchronous Method calls towards Active Objects:

Implicit Futures as method results• Wait-By-Necessity:

• Automatic wait upon a strict operation on an unknown future• First-Class Futures:

- Futures can be passed to other activities- Sending a future to another machines is not blocking

Page 15: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 15

A

ProActive : Active objects

Proxy

Java Object

A ag = newActive (“A”, […], VirtualNode)V v1 = ag.foo (param);V v2 = ag.bar (param);...v1.bar(); //Wait-By-Necessity

V

Wait-By-Necessity is a

DataflowSynchronization

JVM

A

JVM

Active Object

Future Object Request

Req. Queue

Thread

v1v2 ag

WBN!

Page 16: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 16

Call between Objects:Parameter passing: Copy of Java Objects

bax

Copy:at

serialization

(Deep) Copies evolve independently -- No consistency

b.foo(x)

Page 17: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 17

Call between Objects:Parameter Passing: Active Objects

bax

Copy:at serialization

Object passed by Deep Copy - Active Object by Reference

b.foo(x, c)

c

c

Reference Passing

Page 18: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 18

A

Creating AO and Groups

Typed Group Java or Active Object

A ag = newActiveGroup (“A”, […], VirtualNode)V v = ag.foo(param);...v.bar(); //Wait-by-necessity

V

Group, Type, and Asynchrony are crucial for Cpt. and GRID

JVM

Object-OrientedTyped Group Communications

Page 19: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 19

Adaptive Feature 1: Parallel Group Communications

Adaptive strategy to manage the number of threads

Execution of N calls in //

Group proxy

A

B

C

D

Page 20: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 20

OO SPMDA ag = newSPMDGroup (“A”, […], VirtualNode)

// In each membermyGroup.barrier (“2D”); // Global BarriermyGroup.barrier (“vertical”); // Any BarriermyGroup.barrier (“north”,”south”,“east”,“west”);

A

Still, not based on raw messages,

but

Typed Method Calls==> Components

Page 21: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 21

IC2D: Interactive Control and Debugging of Distribution

With any ProActive applicationFeatures:

Graphical and Textual visualizationMonitoring and Control

Page 22: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 22

ContentComposition View

Distributed Components Graphical Composition, Monitoring, Migration

Page 23: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 23

ContentComposition View

Distributed Components Graphical Composition, Monitoring, Migration

Page 24: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 24

Adaptive Feature 2: Multi-transports layer

RMI, RMI-ssh, …, Ibis, HTTP XML, ...Adaptive choice of transport layer between:

• RMI • ssh/RMI

Also available with static configuration:• Ibis (TCP, Myrinet, etc.)• HTTP• … ssh/HTTP

Short Term Perspective:Fully Adaptive Choice between all transports

Page 25: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 25

2. ProActive : Migration of active objects

Migration is initiated by the active object itself through a primitive: migrateTo

Can be initiated from outside through any public method

The active object migrates with:• all pending requests• all its passive objects • all its future objects

Automatic and transparent forwarding of:• requests (remote references remain valid)• replies (its previous queries will be fullfilled)

Page 26: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 26

Principles and optimizations

Same semantics guaranteed (RDV, FIFO order point to point, asynchronous)Safe migration (no agent in the air!)Local references if possible when arriving within a VMTensionning (removal of forwarder)

Page 27: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 27

Principles and optimizations

Same semantics guaranteed (RDV, FIFO order point to point, asynchronous)Safe migration (no agent in the air!)Local references if possible when arriving within a VMTensionning (removal of forwarder)

Page 28: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 28

Principles and optimizations

Same semantics guaranteed (RDV, FIFO order point to point, asynchronous)Safe migration (no agent in the air!)Local references if possible when arriving within a VMTensionning (removal of forwarder)

direct

Page 29: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 29

Principles and optimizations

Same semantics guaranteed (RDV, FIFO order point to point, asynchronous)Safe migration (no agent in the air!)Local references if possible when arriving within a VMTensionning (removal of forwarder)

direct

direct

Page 30: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 30

Principles and optimizations

Same semantics guaranteed (RDV, FIFO order point to point, asynchronous)Safe migration (no agent in the air!)Local references if possible when arriving within a VMTensionning (removal of forwarder)

direct

direct

forwarder

Page 31: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 31

Principles and optimizations

Same semantics guaranteed (RDV, FIFO order point to point, asynchronous)Safe migration (no agent in the air!)Local references if possible when arriving within a VMTensionning (removal of forwarder)

direct

direct

forwarder

Page 32: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 32

Principles and optimizations

Same semantics guaranteed (RDV, FIFO order point to point, asynchronous)Safe migration (no agent in the air!)Local references if possible when arriving within a VMTensionning (removal of forwarder)

direct

direct

forwarder

Page 33: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 33

Principles and optimizations

Same semantics guaranteed (RDV, FIFO order point to point, asynchronous)Safe migration (no agent in the air!)Local references if possible when arriving within a VMTensionning (removal of forwarder)

direct

direct

forwarder

Page 34: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 34

Other Strategy: Centralized

S

Host A

A

Host B Host C Host D

S : SourceA : Agent

referenceServer

Page 35: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 35

Centralized Strategy (2)

S

Host A

Host B

A

Host C Host D

S : SourceA : Agent

reference

Migration

Server

Server Update

A migrating object updates the server

Page 36: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 36

Centralized Strategy (3)

S

Host A

Host B Host C Host D

S : SourceA : Agent

reference

Message

MigrationA

Server

UpdateFailed

A migrating object updates the server

Page 37: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 37

Centralized Strategy (4)

S

Host A

Host B Host C Host D

S : SourceA : Agent

référence

A

ServerAsk for a new

reference

Response

Message

But the AO mighthave moved again in the meantime

… just play again.

!

The source get a new reference from the server

Page 38: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 38

Adaptive Feature 3: TTL-TTU mixed parameterized protocol

TTL: Time To Live + Updating Forwarder:• After TTL, a forwarder is subject to self destruction • Before terminating, it updates server(s) with last agent known location

TTU: Time To Update mobile AO:• After TTU, an will inform a localization server(s) of its current location

Dual TTU: first of two events:• maxMigrationNb: the number of migrations without server update• maxTimeOnSite: the time already spent on the current site

5 s

105 s

Page 39: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 39

Adaptative

Security

Page 40: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 40

ProActive Security: Key Features

ProActive Security Features • Authentication of users and applications (PKI X 509 certificates)• Authentication, Integrity and Confidentiality of communications

[A,I,C]• In XML deployment files, Not In Source• Mobility Aware• Dynamically negotiated policies

Page 41: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 41

A Chain of X509 Certificates

User certificate Application certificate

Entities certificatesGenerate certificate

Page 42: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 42

Multi-level Policies

Dn

Accept Deny

D0

Accept Deny

Dn-1

Accept Deny

VN

Accept DenyAO

Accept Deny

Security policy is defined according all matching rules from:

• Domains

• Virtual Nodes

• Active Objects

Security policy

Administrator + User-level policy

Application-level policy

Page 43: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 43

Combining Policies

Search for the most specific rule in each domain.Retrieve all matching rulesCompute policies according to security attributes

Required (+)

Required (+)

Optional (?)

Disallowed (-)

Optional (?)

Disallowed (-)

SenderReceiver

+ +

+ ?

- -

-

invalid

invalid

Page 44: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 44

ExampleDomain GridA Domain GridB

VN1VN2

Policy rules database

JVM

Page 45: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 45

ExampleDomain GridA Domain GridB

Rose

Daliah

VN1VN2

Policy rules database

JVM

Page 46: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 46

ExampleDomain GridA Domain GridB

Rose

Daliah

VN1VN2

Policy rules database

Migration : - same VN - same domain

Can I migrate to the next VN1 node ?

JVM

Page 47: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 47

ExampleDomain GridA Domain GridB

Daliah

VN1VN2

Policy rules database

Rose

Migration : - same VN - same domain

1 - retrieve VN policy2 - migration allowed

JVM

Page 48: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 48

ExampleDomain GridA Domain GridB

Rose

Daliah

VN1VN2

Policy rules database

Migration : - same VN - same domain

JVM

Page 49: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 49

ExampleDomain GridA Domain GridB

Rose

Daliah

VN1VN2

Policy rules database

Migration : - same VN - other domain

JVM

Can I migrate to the next VN1 node on

GridB domain?

Page 50: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 50

ExampleDomain GridA Domain GridB

Daliah

VN1VN2

Policy rules database

Migration : - same VN - other domain Rose

JVM

1- VN1 policy -> none2- GridA -> GridB : [+A,+I,+C]3- migration with [+A,+I,+C]

Page 51: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 51

ExampleDomain GridA Domain GridB

Rose

Daliah

VN1VN2

Policy rules database

Migration : - same VN - other domain

JVM

Page 52: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 52

ExampleDomain GridA Domain GridB

Daliah

VN1VN2

Policy rules database

Method call : - other VN - other domainFrom Rose --> Daliah

Rose

JVM

Rose -> Daliah : [+A,?I,+C]

Daliah -> Rose : [+A,+I,?C]

Negotiated Policy:Rose -> Daliah : [+A,+I,+C]

Page 53: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 53

Adaptive Feature 4: Adaptive Security

Dynamic setting of the security attributes

Dynamic negotiation between different:• Domain and Sub-domain• Virtual Nodes• Active Objects

on JVMs on different Machines

Page 54: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 54

First-Class Futures

Update

Page 55: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 55

Wait-By-Necessity: First Class Futures

ba

Futures are Global Single-Assignment Variables

V= b.bar ()

c

c

c.gee (V)

v

v

Page 56: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 56

Adaptive Feature 5: Future update strategies

No partial replies and requests: • No passing of futures between activities, more deadlocks

Eager strategies: as soon as a future is computed• Forward-based:

– Each activity is responsible for updating the values of futures it has forwarded

• Message-based: – Each forwarding of future generates a message sent to the computing activity – The computing activity is responsible for sending the value to all

Mixed strategy: • Futures update any time between future computation and WbN

Lazy strategy: • On demand, only when the value of the future is needed (WbN on it)

Page 57: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 57

Wait-By-Necessity: Eager Forward Based

ba

AO forwarding a future: will have to forward its value

V= b.bar ()

c

c

c.gee (V)

v

v

b

Page 58: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 58

Wait-By-Necessity: Eager Message Based

ba

AO forwarding a future: send a message

V= b.bar ()

c

c

c.gee (V)

v

v

b

Page 59: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 59

Wait-By-Necessity: Lazy Strategy

ba

An Active Object requests a Future Value when needed

V= b.bar ()

c c.gee (V)

v

v c

Page 60: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 60

Adaptive:Active Objects, Cp.

vs.MPI

Page 61: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 61

MPI Communication primitivesFor some (historical) reasons, MPI has many com. Primitives:

MPI_Send Std MPI_Recv ReceiveMPI_Ssend Synchronous MPI_Irecv ImmediateMPI_Bsend Buffer … (any) source, (any) tag, MPI_Rsend ReadyMPI_Isend Immediate, async/futureMPI_Ibsend, …

First of all:• a combinatory complexity occurs between sendS and receivesS • many semantic variation and problems arise between implementations

I’d rather put the burden on the implementation, not the Programmers ! How to do adaptive implementation in that context ?

Is Recv at all needed ? First adaptive feature: Dynamic Control Flow of Mess.

Page 62: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 62

Main MPI problems for the GRID

Too static in design

Too complex in Interface (API)

Too many specific primitives to be adaptive

Typelessness

Page 63: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 63

Sum up: MPI vs. ProActive / OO SPMDA simple communication model, with simple communication primitive(s):

• No RECEIVE but data flow synchronization• Adaptive implementations are possible for:

• // machines, Cluster, Desktop, etc.,• Physical network, LAN, WAN, and network conditions

Typed Method Calls:==> Component enabled

… Adaptivity is needed for Components

Page 64: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 64

Adaptive GRIDThe need for adaptive middleware is now acknowledged,

with dynamic strategies at various points in containers, proxies, etc.

Can we afford adaptive GRID ?

with dynamic strategies at various points … communications, groups, checkpointing, reconfiguration, …to deal with various conditions (LAN, WAN, network, P2P, ...)

YES !HPC vs. HPC

High Performance Components vs. High Productivity Components

Page 65: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 65

Conclusion5 Adaptive/Parameterized features in ProActive:

• RMI <--> ssh/RMI … HTTP - Ibis/TCP - Ibis/Myrinet - ...• Groups, Localization in Mobility, Security, Future Update

Perspectives -- On-going work:• Adaptive Components:

• Tensionning• Re-configuration

• Adaptive CheckpointingBetter off with simple Functional RMI / Two-sided MPI Message PassingS

Lets just be careful:otherwise, we’ll just build …

Maladaptive Adaptive Grids !Adapt. Network

Adapt. Middleware

Adapt. Application

TCP is an Adaptive Middleware

Page 66: Being About Adaptive Grid Middleware · • Adaptive Multi-scale Bio-simulation ... Maladaptive Grid ! Denis Caromel 9 What ’’Adaptive Grids’’ are now Adaptive Middleware

Denis Caromel 66

ProActive.ObjectWeb.org