D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF
description
Transcript of D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF
![Page 1: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/1.jpg)
Denis Caromel 1
D. Caromel, et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF
June 23 2005, Beijing
Open Source Middleware for the Grid: ObjectWeb ProActive
1. Asynchronous Distributed Objects: ProActive
2. Example of Application: 3D Electromagnetism
3. Composing for the Grids: Components
ProActive.
ObjectWeb.
org
![Page 2: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/2.jpg)
Denis Caromel 2
Grid ComputingLos Angeles
Beijing
Amsterdam
Sophia Antipolis
Challenges: Programming Model,
Scale, Latency, Heterogeneity,
Versatility (protocols, firewalls, etc.)
![Page 3: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/3.jpg)
Denis Caromel 3
1. Distributed Objects
P r o g r a m m i n g
Composing
Deploying
W r a p p i n g
![Page 4: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/4.jpg)
Denis Caromel 4
A uniform framework: An Active Object pattern A formal model behind: Determinism (POPL’04)
Programming Model:• Remote Objects• Asynchronous Communications, Wait-By-Necessity • Groups, Mobility, Components, Security, Fault-ToleranceEnvironment:• 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 5: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/5.jpg)
Denis Caromel 5
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
Dataflow
Synchronization
JVM
A
JVM
Active Object
Future Object Request
Req. Queue
Thread
v1v2 ag
WBN!
![Page 6: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/6.jpg)
Denis Caromel 6
Explicit Synchronizations
Single Future Synchronization:ProActive.isAwaited (v); // Test if available .waitFor (v); // Wait if not available
Vectors of Futures: .waitForAll (Vector); // Wait all of them .waitForAny (Vector); // Get One
A ag = newActive (“A”, […], VirtualNode)V v = ag.foo(param);... v.bar(); // Wait-by-necessity
![Page 7: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/7.jpg)
Denis Caromel 7
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-Oriented
Typed Group Communications
![Page 8: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/8.jpg)
Denis Caromel 8
OO SPMD A ag = newSPMDGroup (“A”, […], VirtualNode)
// In each member myGroup.barrier (“2D”); // Global Barrier myGroup.barrier (“vertical”); // Any Barrier myGroup.barrier (“north”,”south”,“east”,“west”);
A
Still,
not based on raw messages, but
Typed Method Calls
==> Components
![Page 9: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/9.jpg)
Denis Caromel 9
IC2D: Interactive Control and Debugging of Distribution
With any ProActive applicationFeatures:
Graphical and Textual visualization Monitoring and Control
![Page 10: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/10.jpg)
Denis Caromel 10
Monitoring of RMI, Globus, Jini, LSF cluster Nice -- Baltimore
ProActive IC2D:
Width of links
proportional
to the number
of com-
munications
![Page 11: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/11.jpg)
Denis Caromel 11
2. Application
3D Electromagnetism
![Page 12: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/12.jpg)
Denis Caromel 12
JEM 3D : Java 3D Electromagnetism
Maxwell 3D equation solver, Finite Volume Method (FVM)Pre-existing Fortran MPI version: EM3D (CAIMAN team @ INRIA)
Execution Time on a cluster
0
100
200
300
400
500
600
700
800
900
0 10 20 30 40 50 60 70nombre de processeurs
tem
ps
(sec
on
des
)
21*21*21
31*31*31
43*43*43
55*55*55
81*81*81
97*97*97
113*113*113
121*121*121
Mesh Size
![Page 13: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/13.jpg)
Denis Caromel 13
Interface
![Page 14: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/14.jpg)
Denis Caromel 14
Interface
![Page 15: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/15.jpg)
Denis Caromel 15
Interface
![Page 16: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/16.jpg)
Denis Caromel 16
Interface
![Page 17: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/17.jpg)
Denis Caromel 17
Beating Fortran MPI ?
Current status:
• Sequential Java vs. Fortran code: 2 times slower
• Large data sets in Java ProActive: 150x150x150 (100 million facets)
• Large number of machines: up to 294 machines in Desktop P2P• Speed up on 16 machines:- Fortran: 13.8
- ProActive/Ibis: 12
- ProActive/RMI:8.8
Grid on 5 clusters (DAS II, Netherlands): Speed up of 100 on 150 machines
Fortran: no more than 40 proc. …
Beating Fortran MPI with Java ProActive? X/40 (14/16) = 2X/ n (100/150)
Yes, starting at 105 machines !
![Page 18: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/18.jpg)
Denis Caromel 18
3. Components
for
The GRIDs
![Page 19: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/19.jpg)
Denis Caromel 19
Content
Controller
The Fractal model:Hierarchical Components
Common component model of the ObjectWeb consortium
![Page 20: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/20.jpg)
Denis Caromel 20
Content
Controller
Interfaces = Provided and Required
Provided,
Server
Interfaces
Required,
Client
Interfaces
![Page 21: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/21.jpg)
Denis Caromel 21
Content
Controller
Hierarchical model : Composites encapsulate Primitives,
Primitives encapsulate Code
![Page 22: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/22.jpg)
Denis Caromel 22
Content
Controller
Binding = in an external file (XML ADL), Not in programs
![Page 23: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/23.jpg)
Denis Caromel 23
Content
Controller
Binding = in an external file (XML ADL), Not in programs
![Page 24: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/24.jpg)
Denis Caromel 24
Graphical Interface for Composing Components
![Page 25: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/25.jpg)
Denis Caromel 25
ProActive Component DefinitionA component is:
• Formed from one (or several) Active Object
• Executing on one (or several) JVM
• Provides a set of server ports: Java Interfaces
• Uses a set of client ports: Java Attributes
• Point-to-point or Group communication between components
Hierarchical:• Primitive component: define with Java code and a descriptor
• Composite component: composition of primitive + composite
• Parallel component: multicast of calls in composites
Descriptor:• XML definition of primitive and composite (ADL)
• Virtual nodes capture the deployment capacities and needs
Virtual Node is a very important abstraction for GRID components
![Page 26: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/26.jpg)
Denis Caromel 26
Objects to Distributed Components
Typed Group Java or Active Object
ComponentIdentity Cpt = newActiveComponent (params);A a = Cpt … .getFcInterface ("interfaceName");V v = a.foo(param);
V
AExample of
component
instance
JVM
![Page 27: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/27.jpg)
Denis Caromel 27
A
A
B
C
P
Group proxyGroup proxy
A
B
C
D
Groups in Components
Broadcast at binding,
on client interfaceAt composition,
on composite inner server interface
A parallel component!
![Page 28: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/28.jpg)
Denis Caromel 28
Wrapping Legacy MPI Components
MPI CodeC/Fortran:
Messages on Tags
sent/converted to
Method Calls
ProActive Java:
Method Calls
sent as
Messages on Tags
Virtual Nodes for Deployments
![Page 29: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/29.jpg)
Denis Caromel 29
On-going : MxN communicationsControl at binding points
M components
N components
GATHERING
SCATTERING
REDISTRIBUTION from M to N also, Functional Code
![Page 30: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/30.jpg)
Denis Caromel 30
Call For ContributionsGCM: Grid Component Model
Within CoreGRID
In charge (M. Danelutto, D. Caromel) of defining a Generic, Comprehensive, Open, European and World Wide
GCM: Grid Component Model
Ways to participate: Email to us, come to the GRID @ Work Workshop Oct. 14 2005
![Page 31: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/31.jpg)
Denis Caromel 31
Conclusions and A Few Directions
ProActive: A Strong Programming Model + Components
FACTS AND FIGURES
June 10 World Record: 52-years computation in 6 months in Desktop P2P
Deployed at once on 1000 CPUs (Plugtests on ssh, Globus, LSF, ...)
(Close to) Beating Fortran on an Electromagnetic Application
Looking for collaborations: • Building reusable Cpts from Numerical Codes • Generic Techniques for Wrapping Codes
Available in LGPL with ObjectWeb
http://ProActive.ObjectWeb.org
![Page 32: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/32.jpg)
Denis Caromel 32
![Page 33: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/33.jpg)
Denis Caromel 33
ProActive Non Functional Properties
Currently in ProActive:
• Remotely accessible Objects(Classes, not only Interfaces, Dynamic)
• Asynchronous Communications
• First Class Futures: Wait-By-Necessity
• Group Communications, OO SPMD
• Mobility
• Visualization and monitoring (IC2D)
• Fault-Tolerance (checkpointing),
• Security
• Components
• Non-Functional Exceptions: Handler reification (prototype)
![Page 34: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/34.jpg)
Denis Caromel 34
3. Parallel and composite component
1. Primitive component
2. Composite component
ProActive Components for the GRID An activity, a process, …potentially in its own JVM
C D
Composite: Hierarchical, and
Distributed over machines
Parallel: Composite
+ Broadcast (group)
![Page 35: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/35.jpg)
Denis Caromel 35
Call between Objects:Parameter passing: Copy of Java Objects
ba
x
Copy:at
serialization
(Deep) Copies evolve independently -- No consistency
b.foo(x)
![Page 36: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/36.jpg)
Denis Caromel 36
Call between Objects: Parameter Passing: Active Objects
ba
x
Copy:at serialization
Object passed by Deep Copy - Active Object by Reference
b.foo(x, c)
c
c
Reference Passing
![Page 37: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/37.jpg)
Denis Caromel 37
Wait-By-Necessity: First Class Futures
ba
Futures are Global Single-Assignment Variables
V= b.bar ()
c
c
c.gee (V)
v
v
![Page 38: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/38.jpg)
Denis Caromel 38
Use only Virtual Nodes in the source code
Describe mapping of virtual nodes in XML Deployment Descriptors
Interfaced with various protocols for creation/lookup: rsh,ssh,Jini, LSF,PBS,Globus,OGSA...
Abstract away machines, creation, registry, lookup protocolsVirtualNodes:
Dispatcher <RegisterIn RMIregistry, Globus, Grid Service, …> RendererSetMapping:
Dispatcher --> DispatcherJVM RendererSet --> JVMsetJVMs:
DispatcherJVM = <javapath …/> <classpath…/> sshProcess JVMset = <javapath …/> <classpath…/> GlobusProcessProcesses:
sshProcess = <hostname di.unice.fr/> <login../> GlobusProcess = <hostname cluster.inria.fr/> <gram port 2119/> <node 10/>
Unification of various
deployment systems
through ProActive runtimes
Working on: acquire ProActive runtimes from voluntary PCs (P2P computing) running a ProActive P2P infrastructure
Model and tools for deployment on the grid
![Page 39: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/39.jpg)
Denis Caromel 39
Physical infrastructure
JVM3
JVM2
JVM4
JVM5
computer2
computer3
RuntimeDeployment Descriptor
Abstract deployment modelSeparates design from deployment infrastructure
Virtual nodes
Dynamic enactement of the deployment, from the application
•Host names•Creation protocols of
JVMs•lookup
•registration
Virtual architecture
Source code
VN1
VN2
ActivateMapping(« VN1 »)
ActivateMapping(« VN2»)
![Page 40: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/40.jpg)
Denis Caromel 40
Jem3D: Geometry definition
A Generic Numerical Method: Finite Volume Method (FVM)
(vs. Finite Element Methods)• Calculation of unknowns as average of Control Volume
(vs. Vertices of the mesh for FEM)
• Valid on structured, unstructured, or hybrid meshes
Computation: • a flux balance through the boundary of Control Volume (M, E, EM, loop)
Benchmarks here:• Control Volume = Tetrahedron
• Facet = Triangle
![Page 41: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/41.jpg)
Denis Caromel 41
Same application, many deployments
One Host Local Grid Distributed Grids
Internet
•User constraints can be considered, but are manually expressed in deployment descriptors•Can interface with meta-Grid Schedulers / mappers
![Page 42: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/42.jpg)
Denis Caromel 42
Content
Composition View
Distributed Components Graphical Composition, Monitoring, Migration
![Page 43: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/43.jpg)
Denis Caromel 43
Content
Composition View
Distributed Components Graphical Composition, Monitoring, Migration
![Page 44: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/44.jpg)
Denis Caromel 44
![Page 45: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/45.jpg)
Denis Caromel 45
3D ElectromagnetismSequential Application
![Page 46: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/46.jpg)
Denis Caromel 46
Control Volume in 2D and 3D
![Page 47: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/47.jpg)
Denis Caromel 47
Facets in 2D and 3D
![Page 48: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/48.jpg)
Denis Caromel 48
Architecture of the sequential version
![Page 49: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/49.jpg)
Denis Caromel 49
Application Skeleton
![Page 50: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/50.jpg)
Denis Caromel 50
3D ElectromagnetismParallel version
![Page 51: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/51.jpg)
Denis Caromel 51
Architecture of the sequential version
![Page 52: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/52.jpg)
Denis Caromel 52
Architecture of the ProActive distributed version
An Object-Oriented SPMD program
![Page 53: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/53.jpg)
Denis Caromel 53
3. BENCHMARKS
![Page 54: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/54.jpg)
Denis Caromel 54
Preview 3
![Page 55: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/55.jpg)
Denis Caromel 55
Preview 2
![Page 56: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/56.jpg)
Denis Caromel 56
JEM 3D : Summary of BenchmarksSeq. Java/Fortran: 2
Comparison:
Jem3D over
- ProActive/RMI Sun
- ProActive/RMI Ibis
Em3D in
- Fortran/MPI
On 16 machines:
Fortran: 13.8
ProActive/Ibis: 12
ProActive/RMI: 8.8
Grid experiment on 5 clusters (DAS 2): Speed up of 100 on 150 machines
![Page 57: D. Caromel , et al. INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF](https://reader036.fdocuments.in/reader036/viewer/2022070404/56813aa2550346895da29b18/html5/thumbnails/57.jpg)
Denis Caromel 57
Conclusion - Beating Fortran ?
Current status:
• Sequential Java vs. Fortran code: 2 times slower
• Large data sets in Java ProActive: 150x150x150 (100 million facets)
• Large number of machines: up to 294 machines in Desktop P2P• Speed up on 16 machines:- Fortran: 13.8
- ProActive/Ibis: 12
- ProActive/RMI:8.8
Grid on 5 clusters (DAS 2): Speed up of 100 on 150 machines
Fortran: no more than 40 proc. …
Beating Fortran MPI with Java ProActive? X/40 (14/16) = 2X/ n (100/150)
Yes, starting at 105 machines !