Typed Group Communication & Object-Oriented SPMD Laurent Baduel.

Slides:



Advertisements
Similar presentations
1 Typed Groups for the Grid Laurent Baduel. 2 Outline Context and Objectives Typed groups Application: Jem3D Object-Oriented SPMD Group extensions and.
Advertisements

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,
INTRODUCTION TO SIMULATION WITH OMNET++ José Daniel García Sánchez ARCOS Group – University Carlos III of Madrid.
Christian Delbe1 Christian Delbé OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis November Automatic Fault Tolerance in ProActive.
GridRPC Sources / Credits: IRISA/IFSIC IRISA/INRIA Thierry Priol et. al papers.
Small-World Graphs for High Performance Networking Reem Alshahrani Kent State University.
Tornado: Maximizing Locality and Concurrency in a Shared Memory Multiprocessor Operating System Ben Gamsa, Orran Krieger, Jonathan Appavoo, Michael Stumm.
Introduction To System Analysis and Design
7M701 1 Software Engineering Object-oriented Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 12 )
Dynamic adaptation of parallel codes Toward self-adaptable components for the Grid Françoise André, Jérémy Buisson & Jean-Louis Pazat IRISA / INSA de Rennes.
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
Java for High Performance Computing Jordi Garcia Almiñana 14 de Octubre de 1998 de la era post-internet.
Scripting Languages For Virtual Worlds. Outline Necessary Features Classes, Prototypes, and Mixins Static vs. Dynamic Typing Concurrency Versioning Distribution.
Design Patterns Part IV (TIC++V2:C10) Yingcai Xiao 10/01/08.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
JLS - Abr001 João Luís Sobral Departamento de Informática Universidade do Minho Braga - Portugal Scalable Object Oriented Parallel Programming (SCOOPP)
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 18 Object Database Management Systems.
1 ProActive performance evaluation with NAS benchmarks and optimization of OO SPMD Brian AmedroVladimir Bodnartchouk.
Ch4: Distributed Systems Architectures. Typically, system with several interconnected computers that do not share clock or memory. Motivation: tie together.
Introduction To System Analysis and design
1 Secure Distributed Objects for Grid Applications Laurent Baduel, Arnaud Contes, Denis Caromel OASIS team ProActive
A brief overview about Distributed Systems Group A4 Chris Sun Bryan Maden Min Fang.
Coupling and Cohesion Pfleeger, S., Software Engineering Theory and Practice. Prentice Hall, 2001.
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.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
The Grid Component Model and its Implementation in ProActive CoreGrid Network of Excellence, Institute on Programming Models D.PM02 “Proposal for a Grid.
Crossing The Line: Distributed Computing Across Network and Filesystem Boundaries.
Introduction To System Analysis and Design
Object-Oriented Analysis and Design An Introduction.
Part I MPI from scratch. Part I By: Camilo A. SilvaBIOinformatics Summer 2008 PIRE :: REU :: Cyberbridges.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Application code Registry 1 Alignment of R-GMA with developments in the Open Grid Services Architecture (OGSA) is advancing. The existing Servlets and.
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Methodologies of the SDLC Traditional Approach to SDLC Object-Oriented Approach to SDLC CASE Tools.
Concurrent Aggregates (CA) Andrew A. Chien and William J. Dally Presented by: John Lynn and Ryan Wu.
Cohesion and Coupling CS 4311
Chapter 18 Object Database Management Systems. McGraw-Hill/Irwin © 2004 The McGraw-Hill Companies, Inc. All rights reserved. Outline Motivation for object.
 Identify Active Directory functions and Benefits.  Identify the major components that make up an Active Directory structure.  Identify how DNS relates.
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.
Lecture 4 TTH 03:30AM-04:45PM Dr. Jianjun Hu CSCE569 Parallel Computing University of South Carolina Department of.
A Component Platform for Experimenting with Autonomic Composition A component framework for supporting composition of autonomic services and bio-inspired.
ProActive components and legacy code Matthieu MOREL.
DISTRIBUTED COMPUTING
MPEG-4: Multimedia Coding Standard Supporting Mobile Multimedia System Lian Mo, Alan Jiang, Junhua Ding April, 2001.
A Security Framework with Trust Management for Sensor Networks Zhiying Yao, Daeyoung Kim, Insun Lee Information and Communication University (ICU) Kiyoung.
Introduction to Active Directory
G.v. Bochmann, revised Jan Comm Systems Arch 1 Different system architectures Object-oriented architecture (only objects, no particular structure)
Wide-Area Parallel Computing in Java Henri Bal Vrije Universiteit Amsterdam Faculty of Sciences vrije Universiteit.
Chapter 18 Object Database Management Systems. Outline Motivation for object database management Object-oriented principles Architectures for object database.
A Pattern Language for Parallel Programming Beverly Sanders University of Florida.
3/12/2013Computer Engg, IIT(BHU)1 OpenMP-1. OpenMP is a portable, multiprocessing API for shared memory computers OpenMP is not a “language” Instead,
Superstabilizing Protocols for Dynamic Distributed Systems Authors: Shlomi Dolev, Ted Herman Presented by: Vikas Motwani CSE 291: Wireless Sensor Networks.
CBHPC’08: Component-Based High Performance Computing (16/10/08) 1 A GCM-Based Runtime Support for Parallel Grid Applications Elton Mathias, Françoise Baude.
1 Romain Quilici OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis, IUF July 2nd 2003 ProActive Architecture.
Seminar On Rain Technology
Denis Caromel1 OASIS Team INRIA -- CNRS - I3S -- Univ. of Nice Sophia-Antipolis -- IUF IPDPS 2003 Nice Sophia Antipolis, April Overview: 1. What.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Coupling and Cohesion Schach, S, R. Object-Oriented and Classical Software Engineering. McGraw-Hill, 2002.
Coupling and Cohesion Pfleeger, S., Software Engineering Theory and Practice. Prentice Hall, 2001.
SEMINAR TOPIC ON “RAIN TECHNOLOGY”
MPI: Portable Parallel Programming for Scientific Computing
Peer-to-peer networking
Computer Engg, IIT(BHU)
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER
ProActive Architecture of an Open Middleware for the Grid
The Grid Component Model and its Implementation in ProActive
Motivation Contemporary big data tools such as MapReduce and graph processing tools have fixed data abstraction and support a limited set of communication.
Presentation transcript:

Typed Group Communication & Object-Oriented SPMD Laurent Baduel

Context & Objectives n Traditional use of group Fault tolerance, replication, database Applicative groups, parallelism n Our objectives Collaborative applications More efficient communication Simplicity and structuring

Design n Idea / Goals Manipulate groups as ‘simple’ Java objects Maintain the ‘dot’ notation Code reusability n Creation of typed group Group members have a common type ancestor public class A { … } A gA = ProActive.newGroup(“A”,params);

Group communication n Remote method invocation on a group n Multi-unicast approach Based on the ProActive communication mechanism Replication of N ‘single’ communication Each communication is adapted Preserve the rendez-vous

Group : the result of a Group Communication n Result are dynamically built and updated B gB = gB.foo(); n Ranking order property n Synchronization primitive ProActive.waitOne(gb); ProActive.waitAll(gb); n Predicates ProActive.allArrived(gb); ProActive.allAwaited(gb);

Construction of a result group B A B gB = gA.foo(); Typed group Object (Java or active) creation...

Two representations Management operations: add, remove, … n 2 representations (views) of a same group Typed group Group of object n Ability to switch between those 2 views Group groupA = ProActive.getGroup(gA); groupA.add(new A()); groupA.add(new B()); // B herits from A A gA2 = (A) groupA.getGroupByType();

Two representations: schema Management of the group Functional use of the group Group of objects groupA Typed group gA getGroupByType static method of class ProActive getGroup method of class Group Real Impl.

Broadcast or scatter n Broadcast is the default behavior n Scatter is also possible use a group as parameter Scattered depends on rankings gA.bar(gC); // broadcast gC ProActive.setScatterGroup(gC); ga.bar(gC); // scatter gC AA 1 2 C 12 C C C 1 2 broadcastscatter

Hierarchical groups n Group contains groups Add a typed group into a group n Benefit of the network structure A A

Features of groups n Optimization Parallel calls within a group (adaptive threadpool) Sequential or parallel treatment Single serialization n Flexibility: Active group A group becomes remotely accessible Modifiable service policy

Object-Oriented SPMD n Motivation Cluster / GRID computing SPMD programming notoriety n Able to express most of MPI’s collective communications broadcast scatter gather reduce allscatter allgather

SPMD group A n Creation A ag = ProActive.newSPMDGroup(“A”,...);

API n Topologies Table, Ring, Plan, Torus, Cube, … Open API Neighborhood n Barrier Global Neighbor-based Method-based

Global barrier A n Involves all group member ProActive.barrier(“barrierID”);

Neighbor-based barrier A n Involves only the caller and it neighbors ProActive.barrier(“barrierID”,topo.neighbors());

Method-based Barrier A n Involves only the caller no additional messages ProActive.barrier({“foo”,“bar”,“gee”});

ProActive OO SPMD n A simple communication model Small API No “Receive” but data flow synchronization No message passing but RPC User defined data structure (Object) SPMD groups are dynamic Efficient and dedicated barrier

Group communication is now a key feature of ProActive n Used in many applications and other features Jem3D Chat Multiport component Peer to peer Jacobi