210 likes | 319 Views
Pro Active / GCM. Elton Mathias, Jean Michael Legait, Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF CoreGrid Summer School 2007. GCM Components. GCM: Grid Component Model GCM being defined in the NoE CoreGRID
E N D
ProActive / GCM Elton Mathias, Jean Michael Legait, Denis Caromel, et al. OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF CoreGrid Summer School 2007
GCM Components • GCM: Grid Component Model • GCM being defined in the NoE CoreGRID • Open Source ObjectWebProActive • implements a preliminary version of GCM • GridCOMP takes: • GCM as a first specification, • ProActive as a starting point, and • Open Source reference implementation. Scopes and Objectives: - Grid Codes to Compose and Deploy - No programming, No Scripting, …
Approach Based on the Fractal Model • INRIA - France Telecom, V1 in ’02 • General model, core concepts • Encapsulation • Strict Definition • Assembly and deployment units • Simple, extensible, hierarchical, dynamic • Separation of concerns (controllers) • However: • Distribution ? • Deployment ? • Parallelism ? • Fractal requires extensions for Grid Computing Specified in the Grid Component Model (CoreGRID)
Content Controller (or membrane) Server Interface Client Interface Some important Fractal Concepts • Bind(ing) • Functional interface • Control (or non-functional) Interface
ProActive/Fractal • Implementation of Fractal based on ProActive middleware Model • conformant up to level 3.3 (fully compliant with the API) • Based on MOP architecture: Component as Active Object • Distributed components, asynchronous communications (futures) • Benefits from underlying features of the middleware • Middleware services (Fault Tolerance, Security, Mobility etc..) • Deployment framework (Grids) • Sequential processing of requests in each component • Main extensions to fractal: deployment, collective interfaces • Configurable and extensible
Standard Fractal Interfaces • Only 1 to 1 communications! • collective interfaces • Multicast • Gathercast
Collective Interfaces • Simplify the design and configuration of component systems • Expose the collective nature of interfaces • Cardinality attribute • Multicast, Gathercast, gather-multicast • Based on ObjectWeb Fractal API : • Dedicated controller • Interface typing Verifications • The framework handles collective behaviour at the level of the interface
Multicast interfaces single invocation list of invocations • Multiple invocations • Parallel • Asynchronous • Selective • Dynamic • Data distribution • Automatic • Parameterizabledistribution function • Broadcast, scattering, reduction • Explicit typing, • Parameterized collections • Compatibilityverified at runtime when binding
Multicast Interfaces Illustrated Configurable distribution policies Parallelism Strong typing
Gathercast Interfaces list of invocations single invocation • Synchronization • ~ “join” invocations • Customizable: wait-for-all, wait-for-some, elections • Timeout • Data distribution - Aggregation / reduction of parameters - Redistribution of results - Symmetrical to multicast
Gathercast Interfaces Illustrated Configurable distribution policies Synchronization Strong typing
Architecture Description Language (ADL) • Used to configure and deploy component systems. • The ADL has been updated and is now an extension of the standard Fractal ADL: • allowing to reuse ProActive-specific features like deployment • Support to Collective Interfaces definition (comming soon!)
Virtual Nodes • Permits a program to generate automatically a deployment plan: • find the appropriate nodes on which processes should be launched. • In the future: • adjunction of more sophisticated descriptions • application requirements (hw description, topology, QoS, …)
Renames a VN Exports a VN name Pa.: final version of the GCM specification will precisely define the syntax for the virtual node definition, and their composition. Virtual Nodes in the ADL
Grid Component Model, adaptive components Model checking, formal verification of behavioral properties Components for scientific computing (and legacy code wrapping) VERCORS: VERification of models for distributed communicating COmponants, with safety and Security Vercors editor Ongoing Work
Vercors Editor UML2 Component Diagram • Integrated into the Eclipse environment • Fast system specification • Easy navigation through statical errors
Vercors EditorUML2 State-Machine Diagram Component behaviour specified with UML State Machines Formal verification based on Labelled Transition Systems
Let’s practice a little more ! http://proactive.objectweb.org