Denis Caromel 1 Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF Open Source.

Slides:



Advertisements
Similar presentations
Elton Mathias and Jean Michael Legait 1 Elton Mathias, Jean Michael Legait, Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis,
Advertisements

A Workflow Engine with Multi-Level Parallelism Supports Qifeng Huang and Yan Huang School of Computer Science Cardiff University
Database System Concepts and Architecture
European Commission Directorate-General Information Society Unit F2 – Grid Technologies INSERT PROJECT ACRONYM HERE BY EDITING THE MASTER SLIDE (VIEW.
26 Mai 2004 Séminaire Croisé : Sécurité Informatique Ubiquitaire1 Security Architecture for GRID Applications Séminaire Croisé Sécurité Informatique Ubiquitaire.
1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
Denis Caromel1 Joint work with Ludovic Henrio – Eric Madelaine et. OASIS members OASIS Team INRIA -- CNRS - I3S – Univ. of Nice Sophia-Antipolis, IUF.
The road to reliable, autonomous distributed systems
Denis Caromel, Arnaud Contes OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis 1. Introduction to the GRID.
Eric MADELAINE1 E. Madelaine, Antonio Cansado, Emil Salageanu OASIS Team, INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis OSCAR meeting, Valparaiso,
Grid programming with components: an advanced COMPonent platform for an effective invisible grid © 2006 GridCOMP Grids Programming with components. An.
Denis Caromel Denis Caromel 3 Clouds.
Denis Caromel 1 Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF September 4.
Distributed components
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
1 Ludovic Henrio Paris, An Open Source Middleware for the Grid Programming Wrapping Composing Deploying.
Denis Caromel1 Institut Universitaire de France (IUF) OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis ECCOMAS, July 2004 ProActive: Components.
Distributed Heterogeneous Data Warehouse For Grid Analysis
Technical Architectures
Session 2: task 3.2 GCM, Kracow, June l Current status of GCM Denis Caromel (10 mn each talk) l Wrapping CCA Components as GCM Components Maciej.
Comparison of the RMI and the socket APIs
Denis Caromel1 Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF 3 rd ProActive User Group, Nov Model.
Agenda 1. Background: OASIS, ActiveEon 2. ProActive Overview 3. Programming (Components: GCM Standard) 4. Optimizing 5. Scheduling + Resourcing 6. SOA,
Enterprise Resource Planning
QCDgrid Technology James Perry, George Beckett, Lorna Smith EPCC, The University Of Edinburgh.
Fabien Viale 1 Matlab & Scilab Applications to Finance Fabien Viale, Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S.
 Cloud computing  Workflow  Workflow lifecycle  Workflow design  Workflow tools : xcp, eucalyptus, open nebula.
KARMA with ProActive Parallel Suite 12/01/2009 Air France, Sophia Antipolis Solutions and Services for Accelerating your Applications.
Denis Caromel1 Institut universitaire de France (IUF) OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis REUNA, Santiago, May 2004 GRID.
1 Secure Distributed Objects for Grid Applications Laurent Baduel, Arnaud Contes, Denis Caromel OASIS team ProActive
GT Components. Globus Toolkit A “toolkit” of services and packages for creating the basic grid computing infrastructure Higher level tools added to this.
The Grid Component Model: an Overview “Proposal for a Grid Component Model” DPM02 “Basic Features of the Grid Component Model (assessed)” -- DPM04 CoreGrid.
The Grid Component Model and its Implementation in ProActive CoreGrid Network of Excellence, Institute on Programming Models D.PM02 “Proposal for a Grid.
PARMON A Comprehensive Cluster Monitoring System A Single System Image Case Study Developer: PARMON Team Centre for Development of Advanced Computing,
Ramiro Voicu December Design Considerations  Act as a true dynamic service and provide the necessary functionally to be used by any other services.
Web Services Kanda Runapongsa Dept. of Computer Engineering Khon Kaen University.
1 Update Strategies for First Class Futures Khan Muhammad, Ludovic Henrio INRIA, Univ. Nice Sophia Antipolis,CNRS.
Grid Computing Research Lab SUNY Binghamton 1 XCAT-C++: A High Performance Distributed CCA Framework Madhu Govindaraju.
Grid Execution Management for Legacy Code Applications Grid Enabling Legacy Code Applications Tamas Kiss Centre for Parallel.
Denis Caromel1 OASIS, Univ. of Nice Sophia-Antipolis, INRIA -- CNRS - I3S -- IUF October Web Services Resource Framework 2. Grid scalability.
A High Performance Middleware in Java with a Real Application Fabrice Huet*, Denis Caromel*, Henri Bal + * Inria-I3S-CNRS, Sophia-Antipolis, France + Vrije.
1 Romain Quilici ObjectWeb Architecture meeting July 2nd 2003 ProActive Architecture of an Open Middleware for the Grid.
Emil Salageanu ProActive Parallel Suite ActiveEon March 2008 ActiveEon Hands On Programming.
Grid programming with components: an advanced COMPonent platform for an effective invisible grid © GridCOMP Grids Programming with components.
Grid programming with components: an advanced COMPonent platform for an effective invisible grid © 2006 GridCOMP Grids Programming with components. An.
GVis: Grid-enabled Interactive Visualization State Key Laboratory. of CAD&CG Zhejiang University, Hangzhou
1. 2 Objects to Distributed Components (1) Typed Group Java or Active Object ComponentIdentity Cpt = newActiveComponent (params); A a = Cpt ….getFcInterface.
Denis Caromel 1 Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF Strong Programming.
Grid Execution Management for Legacy Code Applications Grid Enabling Legacy Applications.
Grid Computing Framework A Java framework for managed modular distributed parallel computing.
ProActive components and legacy code Matthieu MOREL.
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
Globus and PlanetLab Resource Management Solutions Compared M. Ripeanu, M. Bowman, J. Chase, I. Foster, M. Milenkovic Presented by Dionysis Logothetis.
Denis Caromel1 Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF October
1 OASIS Team, INRIA Sophia-Antipolis/I3S CNRS, Univ. Nice Christian Delbé Data Grid Explorer 15/09/03 Large Scale Emulation Mobility in ProActive.
1 ProActive GCM – CCA Interoperability Maciej Malawski, Ludovic Henrio, Matthieu Morel, Francoise Baude, Denis Caromel, Marian Bubak Institute of Computer.
Specifying Fractal and GCM Components With UML Solange Ahumada, Ludovic Apvrille, Tomás Barros, Antonio Cansado, Eric Madelaine and Emil Salageanu SCCC.
Eric MADELAINE -- GridComp -- OASIS 1 E. Madelaine (A. Cansado) GridComp project OASIS team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis GridComp.
1 Romain Quilici OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF July 2nd 2003 ProActive Architecture.
2. CALCULUS: A S P. A Theory of Distributed Objects D. Caromel, L. Henrio, Springer 2005, Monograph A Calculus: ASP: Asynchronous Sequential Processes.
Grid Execution Management for Legacy Code Architecture Exposing legacy applications as Grid services: the GEMLCA approach Centre.
Denis Caromel1 Institut universitaire de France (IUF) OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis JAOO, Cannes, May 2004 Programming,
Nguyen Thi Thanh Nha HMCL by Roelof Kemp, Nicholas Palmer, Thilo Kielmann, and Henri Bal MOBICASE 2010, LNICST 2012 Cuckoo: A Computation Offloading Framework.
Denis Caromel1 OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis -- IUF IPDPS 2003 Nice Sophia Antipolis, April Overview: 1. What.
A Web Based Job Submission System for a Physics Computing Cluster David Jones IOP Particle Physics 2004 Birmingham 1.
Grid programming with components: an advanced COMPonent platform for an effective invisible grid © GridCOMP Grids Programming with components.
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Inventory of Distributed Computing Concepts
ProActive Architecture of an Open Middleware for the Grid
The Grid Component Model and its Implementation in ProActive
Presentation transcript:

Denis Caromel 1 Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF Open Source Middleware for Grid and Parallelism: 1.GRIDs and Parallelism 2.Active Objects + Groups 3.Components 4.Deployment 5.GUI 6.Applications (BLAST)

Denis Caromel 2 ProActive Parallel Suite (1) Open Source + PROFESSIONAL SUPPORT

Denis Caromel 3 1. The GRIDs PCs : 1 Billion in 2002 (25 years) Forecast: 2 Billions in 2008

Denis Caromel 4 The Grid Concept GRID = Electric Network Computer Power (CPU cycles) Electricity Can hardly be stored, if not used Lost Global management, Mutual sharing of the resource 2 important aspects : 1. Diversity 2. Computational + Data Grid

Denis Caromel 5 5 Enterprise Grids Internet EJBServlets Apache Databases

Denis Caromel 6 6 Scientific Grids Internet Clusters Parallel Machine Large Equipment

Denis Caromel 7 7 Internet Grids Internet Job management for embarrassingly parallel application (e.g. SETI)

Denis Caromel 8 8 Intranet Grids - Desktop Grids Internet Using Spare Cycles of Desktops Potentially: - Non-embarrassingly parallel application - Across several sites How to Program ? How to Deploy ?

Denis Caromel 9 9 The multiple GRIDs Scientific Grids : Enterprise Grids : Internet Grids, (miscalled P2P grid): Intranet Desktop Grids Strong convergence needed and somehow in progress! 2 New Disturbing Factors: End of Moore Law and Multi-Cores  For SBGrid: The Multiple Scientific GRIDs  2D and 3D graphics SB workstations  EM laboratory Clusters  Global grids and other federally funded equipments

Denis Caromel 10 Grid Computing with ProActive Boston Nice Beijing Shanghai Hierarchical Deployment Challenges: Programming Model, Scale, Latency, Heterogeneity, Versatility (FT, protocols, firewalls, etc.)

Denis Caromel Distributed and Parallel Objects ProActive Programming

Denis Caromel 12 ProActive Parallel Suite

Denis Caromel 13 ProActive Parallel Suite

Denis Caromel 14 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 Active Object Future Object Request Req. Queue Thread v1 v2 ag WBN!

Denis Caromel 15 ProActive : Explicit Synchronizations Explicit Synchronization: - ProActive. isAwaited (v); // Test if available -. waitFor (v); // Wait until availab. Vectors of Futures: -. waitForAll (Vector); // Wait All -. waitForAny (Vector); // Get First A ag = newActive (“A”, […], VirtualNode) V v = ag.foo(param);... v.bar(); //Wait-by-necessity

Denis Caromel 16 Wait-By-Necessity: First Class Futures ba Futures are Global Single-Assignment Variables V= b.bar () c c c.gee (V) v v b

Denis Caromel 17 Proofs in GREEK

Denis Caromel 18 Standard system at Runtime: No Sharing NoC: Network On Chip

Denis Caromel 19 TYPED ASYNCHRONOUS GROUPS

Denis Caromel 20 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

Denis Caromel 21 Broadcast and Scatter JVM ag cg ag.bar(cg); // broadcast cg ProActive.setScatterGroup(cg) ; ag.bar(cg); // scatter cg c1 c2 c3 c1 c2 c3 c1 c2 c3 c1 c2 c3 c1 c2 c3 c1 c2 c3 s c1 c2 c3 s Broadcast is the default behavior Use a group as parameter, Scattered depends on rankings

Denis Caromel 22 Dynamic Dispatch Group JVM ag cg c1 c2 c3 c4 c5 c6 c7 c8c0 c9c1 c2 c3 c4 c5 c6 c7 c8c0 c9 c1 c2 c3 c4 c5 c6 c7 c8c0 c9 Slowest Fastest ag.bar(cg);

Denis Caromel 23 ProActive Parallel Suite

Denis Caromel 24 ProActive Parallel Suite

Denis Caromel 25 Parallel, Distributed, Hierarchical 3. Components for the Grid Composing, Wrapping code to make them fit for the Grid

Denis Caromel 26 A Provide/Require Component My Business Component Component interface Interface Event sources Event sinks Attributes Reference OFFERED REQUIRED Courtesy of Philippe Merle, Lille, OpenCCM platform

Denis Caromel 27 Provide + Use, but flat assembly Building Component Applications = Assembling Components with XML ADL

Denis Caromel 28 Objects to Distributed Components (1) Typed Group Java or Active Object ComponentIdentity Cpt = newActiveComponent (params); A a = Cpt ….getFcInterface ("interfaceName"); V v = a.foo(param); V A Example of component instance JVM Truly Distributed Components IoC: Inversion Of Control (set in XML)

Denis Caromel 29 A A B C P Group proxy A B C D Groups in Components (1) Broadcast at binding, on client interface At composition, on composite inner server interface A parallel component!

Denis Caromel 30 GCM: Grid Component Model A Strong Grid Standard with ETSI: European Telecommunications Standards Institute

GCM Scopes and Objectives: Grid Codes that Compose and Deploy No programming, No Scripting, … No Pain Innovation: Abstract Deployment Composite Components Multicast and GatherCast MultiCast GatherCast

Denis Caromel 32 GCM features provided in ProActive: GCM Fractal ADL (XML) (Architecture Description Language) GCM Management (Java, C, WSDL API) GCM Application Description (XML) GCM Interoperability Deployment (XML)

Denis Caromel 33 Ho to use GCM & Components for SBGrid ? Description of a piece of code to make it fit for the Grid (& scheduling): Required: Hardware, OS, Configuration Input needed Output Produced Optional, on a case by case basis: Wrapping the code in a portable manner, adding necessary control Description of Services Offered, and Required (CP, + Services)  Making it possible to compose SBGrid software

Denis Caromel 34 ProActive Parallel Suite

Denis Caromel 35 ProActive Parallel Suite

Denis Caromel 36 ProActive Parallel Suite (1)

Denis Caromel 37 ProActive Parallel Suite (1)

Denis Caromel Deployment Deploying

Denis Caromel 39 How to deploy on the Various Kinds of Grid Internet Clusters Parallel Machine Large Equipment Internet Job management for embarrassingly parallel application (e.g. SETI) Internet Servlets EJBsDatabase s

Denis Caromel 40 Abstract Deployment Model Problem: Difficulties and lack of flexibility in deployment Avoid scripting for: configuration, getting nodes, connecting, etc. A key principle: Virtual Node (VN) + XML deployment file Abstract Away from source code, and Wrapping code: Machines Creation Protocols Lookup and Registry Protocols Protocols and infrastructures: Globus, ssh, rsh, LSF, PBS, … Web Services, WSRF,...

Denis Caromel 41 Physical infrastructure JVM3 JVM2 JVM4 JVM5 computer2 computer3 Runtime GCM XML Deployment Descriptor Abstract deployment model Separates design from deployment infrastructure Virtual Nodes (VN) Dynamic enactment of the deployment, from the application Host names Creation protocols Lookup, Registration Multi-Cores Virtual architecture Source code VN1 VN2

Denis Caromel 42 Data management: File transfer Integrated with Deployment: Resource acquisition file transfer when available: unicore, nordugrid, Globus Other non-deployment protocols: scp, rcp, … ProActive own protocol when other fails: ProActive Failsafe File Transfer ProActive supports the following transfers: –Push: To a remote node –Pull: From a remote node –Triangle: Triggered from node A, occurring between node B  C It can be used at: –Deployment time (XML) –Execution at any time (API) –Retrieval time (XML)

Denis Caromel 43 File Transfer in Deployment Descriptors

Denis Caromel 44 API: Asynchronous File Transfer with Futures Immediately returns a File Future to the caller (subject to Wait-By-Necessity) VN RETRIEVE: pullFile is invoked, and an array of futures (File[]) is returned Futures: increase the performance when transferring files between peers: Outperforms rcp when Pushing while Pulling a file!

Denis Caromel 45 Performance Comparison 100Mbit LAN network with a 0.25[ms] ping, network configured at 10[Mbitsec] duplex First, ProActive failsafe and native scp perform the same Second, ProActive deploys the files in parallel to the nodes, faster than scp: several invocations of push, on a set of nodes, are executed in parallel by those nodes

Denis Caromel 46 GUI in ProActive Parallel Suite

Denis Caromel 47 GUI in ProActive Parallel Suite

Denis Caromel IC2D Interactive Control & Debug for Distribution Eclipse GUI for the GRID

Denis Caromel 49 Programmer Interface for Analyzing and Optimizing

Denis Caromel 50

Denis Caromel 51 IC2D

Denis Caromel 52 TimIt Automatic Timers in IC2D Profile your application in real-time

Denis Caromel 53 Time Line

Denis Caromel 54 Scaling Up Graphical Views: 120 Active Objects on a single Host

Denis Caromel 55 Scaling Up Graphical Views Master/Workers on 26 Hosts

Denis Caromel 56 Pies for Analysis and Optimization

Denis Caromel 57 Pies for Analysis and Optimization

Denis Caromel 58 With Summary Report

Denis Caromel 59 Scheduler and Resource Manager: User Interface

Denis Caromel 60 Scheduler: User Interface

Denis Caromel 61 Scheduler: Resource Manager Interface

Denis Caromel 62 Ongoing Work: 3D View in IC2D

Denis Caromel 63 Ongoing Work: Integration with JMX JConsole: Monitoring Heap, Threads, CPU Over 60 Hours

Denis Caromel Example of ProActive Applications

Denis Caromel 65 Parallel BLAST with ProActive (1) together with Mario Leyton Basic Local Alignment Search Tool for rapid sequence comparison BLAST developed by NCBI (National Center for Biotechnology Information) Standard native code package, no source modification! With PPS Skeletons parallelization and distribution added to the application A seamless deployment on all Grid platforms is obtained: Input Files are automatically copied to computational nodes at Job submission Result Files will be copied on client host BLAST Skeleton program using the Divide and Conquer skeleton: Division of Database based on conditions (Nb. Nodes, Size, etc.)

Denis Caromel 66 Parallel BLAST with ProActive (2) BLAST Skeleton program using the Divide and Conquer skeleton: Skeleton root; /* Format the query and database files */ Pipe formatFork = new Pipe (new ExecuteFormatDB(), new ExecuteFormatQuery()); /* Blast a database * 2.1 Format the database * 2.2 Blast the database */ Pipe blastPipe = new Pipe (formatFork, new Seq (new ExecuteBlast())); /* 1 Divide the database * 2 Blast the database with the query * 3 Conquer the query results */ root = new DaC (new DivideDB(), new DivideDBCondition(), blastPipe, new ConquerResults());

Denis Caromel 67 Distributed BLAST Overheads

Denis Caromel 68 Speedup of Distributed BLAST on Grid5000

Denis Caromel 69 Sylvain Cussat-Blanc, Yves Duthen – IRIT TOULOUSE Artificial Life Generation ApplicationJ+1J+5J+6J+7 Version ProActive CPUs Initial Application 1 PC56h52 => Crash! ProActive Version 300 CPUs19 minutes Developpement of artificial creatures

Denis Caromel 70 JECS : 3D Electromagnetism Radar Reflection on Planes

Denis Caromel 71 Code Coupling : Vibro Acoustic (courtesy of EADS)

Denis Caromel 72 N-Body Particules

Denis Caromel 73 Monte Carlo Simulations, Non-Linear Physics, INLN

Denis Caromel 74 Scilab Grid Toolkit

Denis Caromel 75 Mikros Image: Post Production

Denis Caromel 76 Summary

Denis Caromel 77 Multi-Core to Distributed Concurrency + Parallelism Multi-Cores + Distribution

Denis Caromel 78 Conclusion: Why does it scale? Thanks to a few key features: Connection-less, RMI+JMS unified Messages rather than long-living interactions

Denis Caromel 79 Conclusion: Why does it Compose? Thanks to a few key features: Because it Scales: asynchrony ! Because it is Typed: RMI with interfaces ! First-Class Futures: No unstructured Call Backs and Ports

Denis Caromel 80 Summary-Perspective: Comprehensive Toolkit Legacy Wrapping + //, Dist. for Grid

Denis Caromel 81

Denis Caromel 82 ProActive Parallel Suite (1)

Denis Caromel 83 ProActive Parallel Suite (1)

Denis Caromel 84 ProActive Parallel Suite (1)