140 likes | 206 Views
Contribution du projet PARIS Christian Pérez. Réunion LEGO LIP, ENS Lyon 10 février 2006. Activités du projets PARIS. Grid Data Sharing Modèle de composants parallèle Déploiement. JuxMem: a Grid Data-Sharing Service. Juxmem group. Grid data-sharing service Grid-scale: 10 3 -10 4 nodes
E N D
Contribution du projet PARISChristian Pérez Réunion LEGO LIP, ENS Lyon 10 février 2006
Activités du projets PARIS • Grid Data Sharing • Modèle de composants parallèle • Déploiement
JuxMem: a Grid Data-Sharing Service Juxmem group • Grid data-sharing service • Grid-scale: 103-104nodes • Data persistence • Transparent data localization • Data consistency • Fault-tolerance • JuxMem = DSM + P2P • Implementation • Based on JXTA 2.0 (http://www.jxta.org/) • Current formalized collaborations • French ACI MD: GDS and GdX projects • Sun Microsystems, Santa Clara, USA • 3 years contract (JXTA/Grid’5000) • Univ. Of Illinois at Urbana Champaign • AIST, Tsukuba, Japan Data group D Cluster group B Cluster group A Cluster group C http://juxmem.gforge.inria.fr/
HPC Component A HPC Component B // Comp. B // Comp. A Parallel Component Model • GridCCM • A parallel distributed component model • Extension of CCM • Based on PaCO++ • PaCO++ • A parallel distributed object model • Extension of CORBA • Feature of both models • MxN data redistribution • Plugin for data redistribution • Plugin for communication scheduling Parallel Object Model (PaCO++) Parallel Component Model (GridCCM) ComponentExtension Parallel Extension Parallel Extension CORBA Object Model CORBA Component Model (CCM) ComponentExtension
ADAGE • Outil de déploiement automatique d’application pour grille de calcul • Unique commande de déploiement • 3 infos en entrée • Description des ressources • Description de l’application • Paramètres de contrôle • Choix du planificateur (random, round-robin), … • Un plugin pour chaque type d’application • Convertisseur de description • Configuration de l’application • CCM, MPICH-P4, MPICH-G2, JXTA • Plugin: 400 à 1200 lignes de C++
Contributions principales de PARIS • WP2 • Tâche 2.1: Modèle de composant avec accès à des données partagées • Tâche 2.2 : Modèle de composant supportant la dynamicité (par exemple le paradigme maître-travailleur ou la notion de workflow) • Tâche 2.3 : Modèle de composants et logiciels patrimoniaux • Tâche 2.4 Unification des modèles des tâches 2.1, 2.2 et 2.3.
Component A Component B Enhance the Component Model with Data Sharing Facilities Allocate Read / Write Read Data Sharing Service Data
A B Our Study : A Model Based on Data Ports C • Introduce a data-oriented port • General ‘data port’ model • Applied to CCM & CCA • Extend IDL3 • Keywords «accesses» «shares» • Access through a local interface • Flexible • Rather decentralized • Load balance data_ref Data component C { shares sequence<double> a; }; Component A accesses sequence<double> p; };
Couche d'abstraction de l'accès à la donnée Fichier local NFS JuxMem Implémentation du modèle intermédiaire3 systèmes de gestion de données juxmem_alloc(size); id = juxmem_map(..); juxmem_acquire(..); juxmem_acquireR(..); juxmem_release(..); x = juxmem_read(..); juxmem_write(val); id = mkstemp(..); id = open(..); close(..); lockf(..); lseek(..); x = read(..); write(val); id = mkstemp(..); id = open(..); close(..); flock(..); lseek(..); x = read(..); write(val);
Dynamic behavior and component models • Started with a “simple” and well understood pattern • The master-worker pattern • Defined an abstract model for such a relationship between components • Applied to • CORBA Component Model • Fractal • Current prototype in CCM • On going work • Real application validation phase • Future work • Add more “dynamic” behavior • Workflow!
portC Worker portI portI Master Master portC portC Worker Worker Overview of the collection idea Collectionof workers • Introduce the need of abstract ADL
Points d’interactions • WP1 • Valider le(s) modèle(s) proposé(s) • WP2 • MW paradigme et DIET • Workflow et code patrimoniaux • WP3 • Déploiement et algorithmes de placement • Exécution et algorithmes de placement • WP4 • Juxmem high performance • Support de libpthread • WP5 •