La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Algorithmique pour les plateformes distribuées et hétérogènes

Présentations similaires


Présentation au sujet: "Algorithmique pour les plateformes distribuées et hétérogènes"— Transcription de la présentation:

1 Algorithmique pour les plateformes distribuées et hétérogènes
LIP ENS Lyon INRIA Rhône-Alpes

2 Plan de la présentation
Membres du projet Introduction et fondements scientifiques Présentation globale du projet Algorithmique et ordonnancement Ordonnancement pour le calcul creux Approche client-serveur pour la simulation Logiciels Collaborations régionales, nationales et internationales Contrats et projets Conclusions et perspectives

3 Effectifs Permanents Collaborateurs extérieurs
E. Caron (MdC ENS) F. Desprez (DR2 INRIA, responsable) J.-Y. L’Excellent (CR2 INRIA) Y. Robert (Prof. ENS Lyon) F. Vivien (CR1 INRIA) Collaborateurs extérieurs J.-M. Nicod (MdC Besançon) L. Philippe (Prof. Besançon) Détachements, IE, ATER, postdocs, invités P. Combes (IE INRIA ACI GRID ASP , jusqu’à Sept. 03) – H. Dail (IE INRIA, à partir de Janv.03) G. Utard (Det. INRIA, jusqu’à Sept. 03) – A. Su (Posdoc INRIA, à partir de Janv.03) C. Pera (IE ENS RNTL GASP, , jusqu’à Juin. 04) – M. Colin (Postdoc INRIA, jusqu’à Sep. 04) C. Koch Hoffer (IE INRIA VTHD++, jusqu’à Sept. 03) Doctorants S. Dahan (B), V. Garonne (M), A. Guermouche, B. Del Fabro (B), L. Marshall, P. Kaur Chouhan, A. Legrand, M. Quinson (jusqu’à Sept. 03), H. Renard, A. Vernois

4 Introduction et fondements

5 Caractéristiques des plateformes cibles
Hétérogénéité Réseaux (couches de communications multi-protocoles), processeurs, hiérarchies mémoire profondes Équilibrage des charges (ordonnancement) Distribution des données (statique et dynamique) Évaluation des performances, modélisation des architectures Simulation Dynamicité Découverte de l’architecture Distribution des données Évaluation des performances, modélisation Informations sur la charge en temps réel Réactivité !

6 Nouveau projet GRAAL (GRids And ALgorithms)
Focalisation sur les problèmes algorithmiques dans les environnements hétérogènes et distribués Algorithmique, placement de données et ordonnancement Algorithmique pour le creux Approche client-serveur pour l’exécution distribuée Mots-clés: algorithmique + bibliothèques + applications sur les architectures hétérogènes et distribuées Un des 5 challenges de l’INRIA : « Maîtriser l’infrastructure numérique en sachant programmer, calculer et communiquer sur l’Internet et sur des réseaux hétérogènes »

7 Algorithmique et ordonnancement
Y. Robert, F. Vivien

8 Algorithmique et ordonnancement : Objectifs
Nécessité d'une approche théorique malgré la difficulté des problèmes d'ordonnancement (minimisation du temps d'exécution) Injecter une connaissance statique dans un environnement essentiellement dynamique Étudier l'impact des nouveaux paramètres architecturaux : hétérogénéité, volatilité, hiérarchie Évaluation des stratégies : rejouer/comparer les heuristiques contre une même charge, simulée mais réaliste

9 Algorithmique et ordonnancement : Résultats (1/2)
Extension de ScaLAPACK aux grappes hétérogènes Nouveaux résultats de complexité Redistribution face aux variations de vitesse Publications marquantes : IEEE TC, IEEE TPDS, livre ALgoPar DIVISIBLE LOAD Maître-esclave hétérogène Algorithme multi-round : premier résultat de complexité Publications marquantes : IEEE TPDS, Parallel Computing Collaboration UCSD : H. Casanova

10 Algorithmique et ordonnancement : Résultats (2/2)
ORDONNANCEMENT EN REGIME PERMANENT Distribution optimale de tâches indépendantes sur une plateforme complexe Extension au parallélisme mixte Approche féconde : nombreux travaux en cours Publications marquantes : IPDPS, journaux à paraître Collaboration UCSD : L. Carter, J. Ferrante SimGrid Extension à un ordonnanceur distribué Découverte et modélisation des réseaux V2 du logiciel disponible librement

11 Algorithmique et ordonnancement : Perspectives
Grappes de grappes Équilibrage de charge avec partage de bande passante dans les réseaux ORDONNANCEMENT Heuristiques hiérarchiques et intégration DIET Boîte-à-outils maître-esclave hétérogène Tâches partageant des fichiers Réplication pour la tolérance aux pannes

12 Algorithmique pour le creux
J.-Y. L’Excellent, G. Utard

13 Méthodes directes pour la résolution de systèmes linéaires creux de grande taille
Résolution d’un système linéaire creux Ax=b Simulation d’un phénomène physique Méthodes directes (ex: multifrontale) A = LU ou LDLT (Gauss) Résolution : Ly = b puis Ux = y Très robustes si pivotage numérique ( structures de données dynamiques) Heuristiques de renumérotation Approches dynamiques (placement, ordonnancement) Structures de données dynamiques Dynamicité liée aux architectures parallèles actuelles Remplissage Matrice initiale

14 Méthodes directes : Axes de recherche (1/2)
Étude des techniques de renumérotation les plus récentes AMD, AMF, SCOTCH (ScAlApplix), PORD (Univ of Paderborn), METIS (Univ of Minnesota) Impact sur le graphe de dépendance des tâches Impact sur la mémoire Impact sur les performances et le parallélisme Ordonnancements dynamiques et équilibrage de charge Grappes de multiprocesseurs Ordonnanceurs pour optimiser les accès mémoire Extension aux architectures plus hétérogènes Approches out-of-core Faire face aux défis de la simulation (taille croissante des problèmes) Factorisation + résolution (anticiper la lecture des facteurs) Très lié aux aspects ordonnancement

15 Méthodes directes : Axes de recherche (2/2)
Accès à nos techniques de résolution au travers de la grille Mise en place en environnement client-serveur (avec DIET) Site d’expertise (portail Web) avec comparaison à distance d’une large gamme de solveurs creux (ACI GRID TLSE) Expérimentation et validation des recherches sur des problèmes industriels de grande taille Grâce à la plateforme logicielle MUMPS, diffusée dans l’industrie: Boeing, EADS, CEA, Dassault, … Rester à l’écoute des besoins des utilisateurs numériciens Maintenir une plateforme d’expérimentation compétitive Publications SIAM J. Matrix Analysis and Applications, ACM Trans. Math. Software, Comput. Methods Appl. Mech. Eng., Parallel Computing, IPDPS Collaborations ENSEEIHT-IRIT, CERFACS, PARA//AB (Norvège), NERSC (Berkeley)

16 Méthodes directes : Perspectives
Poursuivre les collaborations industrielles accès à des problèmes réels contrats d’étude Algorithmique numérique pour le creux: out-of-core et liens avec l’ordonnancement couplage avec des méthodes itératives phase d’analyse symbolique parallèle, etc. Environnements très hétérogènes processeurs/réseaux/mémoire ordonnancements mixtes statiques/dynamiques Utilisation des ressources de la grille accès à distance aux solveurs valorisation de nos recherches (aspect vitrine) Algorithmique numérique pour le creux, … en ayant pour objectif la grille

17 Approche client serveur pour la simulation
E. Caron, F. Desprez, J.-M. Nicod, L. Philippe Voir Eddy !

18 Serveurs de calculs : Objectifs
Fournir de la puissance de calcul à travers l’Internet Développer une boîte-à-outils pour le déploiement d’environnements de type Application Service Provider (ASP) applications de différentes natures (dynamique moléculaire, chimie, électronique, physique, géologie, bioinformatique, compilation, …) Modèle client-agent-serveur (Remote Procedure Call pour la grille) Étudier les problèmes fondamentaux derrière la mise en place de tels environnements Ordonnancement Gestion de données Liaisons avec les intergiciels Valider les résultats théoriques par simulation (SimGrid) l’intergiciel (plateforme logicielle DIET, Distributed Interactive Engineering Toolbox) Participation au Global Grid Forum (GridRPC WG) C A S

19 AGENT Partie centrale des systèmes GRID-RPC Localisation importante
Choisit les serveurs capables de réaliser une requête demandée par un client Équilibre la charge entre les serveurs (ordonnancement) Récupère les informations sur les serveurs disponibles Interroge la base de données de performances Localisation importante Problèmes éventuels de passage à l’échelle Peut gérer Une partie de la sécurité La tolérance aux pannes de serveurs Dans notre approche Ensemble distribué d’agents Parcours d’arbres avec informations réparties dans les nœuds pour l’approche hiérarchique Connexion à FAST pour récupérer les informations sur les ressources Différents ordonnanceurs génériques ou dépendants des applications Liaisons avec la découverte de services dans les intergiciels C S A

20 Ordonnancement Ordonnancement hiérarchique et distribué
Étude de plusieurs connexions entre les agents (hiérarchique, distribuée, agents dupliqués, …) Heuristiques associées Déploiement automatique Placement des agents en fonction des caractéristiques de l’architecture cible (hiérarchie de réseaux, variations de performances, dynamicité) Parallélisme mixte Association du parallélisme de données et du parallélisme de tâches Ordonnancement des requêtes une à une (ordo. Online) ou d’un flot de requêtes (connaissance « statique » des dépendances et graphe de l’application) Connexion pair-à-pair des ordonnanceurs Connexion totalement dynamique au vol (dynamicité de la plateforme, tolérance aux pannes) PASTRY, CHORD, CAN Publications : Parallel Computing, CCPE, PDCP, IPDPS, EuroPAR, HiPC, ICPP Collaborations : GRAIL/UCSD, LaRIA, ALGORILLE E. Caron, F. Desprez, J.-M. Nicod, Y. Robert, F. Vivien

21 Gestion des données Accès aux données
Sources : Privées (client), Partagées (serveur dédié) Temps d'accès ? Infrastructure de stockage intermédiaire Espaces de stockage réservés sur les nœuds de calcul plus mécanismes de transfert optimisés (GASS) Réseau parallèle de stockage (IBP) Stratégies d'optimisation : réplication, migration, persistance Problématiques : localisation, sécurité, intégrité, prédiction Axes de recherche : Intégration des infrastructures de stockage : interaction avec l'ordonnancement (sélection de nœuds de calcul, demande de réplication/migration) Gestion de données modifiables (cohérence, ACI MD GDS) Publications : Parallel Computing, IPDPS, CCGRID Collaborations : LaRIA, LRI Le point d'accès unique aux données est le goulot d'étranglement Des systèmes de stockage distribué sur/pour la grille ont donc été conçus pour améliorer les accès. Principe de base : la réplication des data sur des serveurs rapides/proches. On compte donc étudier ces infrastructures ainsi que leur intégration dans un NES telle que DIET. Les problèmes principaux qui se poserons concernera celui du placement (ordonné un réplication/migration) et la determination des temps d'accès (nature dynamique du réseau). Tous ces infrastructures ne proposent que des accès a des objet read only, et ne permettent pas de modifier des réplicats. Dans le cadre de la proposition d'ACI MD GDS, nous voulons étudier la faisabilité d'introduire des objets modifiables et les problèmes de cohérence qui en découle. E. Caron, J.-M. Nicod, L. Philippe, G. Utard

22 Évaluation de nouvelles technologies logicielles
Relations fortes entre d’une part les couches logicielles utilisées pour développer les environnements et les applications et d’autre part les algorithmes et heuristiques utilisées Modélisation des comportements réseau Modélisation des architectures cibles (hiérarchie) Modélisation des diverses couches logicielles Modèles existants pour les approches CORBA (utilisé dans DIET) Autres modèles ? Nouvelles technologies utilisées dans les grilles (Web Services (OGSA), JXTA, composants, …) Important de surveiller l’évolution des intergiciels pour nos propres développements F. Desprez, L. Philippe

23 Logiciels Scilab// DIET MUMPS SimGrid
Version parallèle de Scilab (PVM, PBLAS, ScaLAPACK, NetSolve, DIET) Surcharge des opérateurs DIET Toolkit pour applications utilisant des serveurs de calcul distribués API pour l’ajout de nouvelles applications FAST (Fast Agent System Timer) pour l’évaluation de la plateforme MUMPS Solveur creux par méthode multifrontale Collaboration avec le CERFACS, l’ENSEEIHT-IRIT et PARA//AB Plateforme d’expérimentation et de valorisation SimGrid Toolkit de simulation à événements discrets pour la simulation d’heuristiques d’ordonnancement Insertion de traces réelles Amélioration dans GRAAL (simulation d’agents communicants) En collaboration avec UCSD

24 Contrats et projets nationaux
ARC INRIA RedGRID : redistribution de données en environnement hétérogène ACI Grid ASP : déploiement d’applications sur plateforme DIET TLSE : site d’expertise pour les matrices creuses DataGRAAL : gestion de données dans les grilles CGP2P : approche calcul global (XtremWeb) GRIPPS : recherche de motifs en bioinformatique GRID2 : animation ARGE : fédération des travaux dans le grand est ACI Grandes Masses de Données GDS : Gestion de données à grande échelle Grid Explorer Plateforme de simulation RNTL GASP : développement de la plateforme DIET (avec Sun Labs Europe) RNRT VTHD++ : validation de la plateforme réseau avec nos applications PSMN et Fédération lyonnaise de calcul En cours de soumission : GRID 5000, RNTL eGuilde

25 Contrats et projets nationaux, européens et internationaux
NSF/INRIA University of Minnesota, University of Indiana, NESRC, ScAlApplix, ALADIN, ENSEEIHT-IRIT préconditionneurs parallèles University of Tennessee environnements pour la grille University of California San Diego ordonnancement hétérogène Équipe Associée INRIA GRAIL (UCSD) Ordonnancement pour les plateformes hétérogènes Simulation et validation de DIET avec SimGrid Échange de chercheurs et organisation workshop STAR Korée Déploiement de DIET sur une grille nationale + applis Programme Franco-Bavarois LRR Lab., TUM (Munich) Monitoring grille et application de bioinformatique Réseau d’excellence CoreGRID (6ème PRCD)

26 Collaborations nationales et internationales
Laboratoires étrangers University of Tennessee Knoxville, USA University of California San Diego, USA NESRC, Lawrence Berkeley Laboratory, USA PARALLAB, University of Bergen, Norvège TUM Munich, Allemagne University of Sains, Malaisie Projets INRIA APACHE (Rhône-Alpes) ARES (Rhône-Alpes) RESO (Rhône-Alpes) Résédas/ALGORILLE (Lorraine), ALADIN (IRISA) PARIS (IRISA), Métalau (Rocquencourt) ScAlApplix (Futur) Laboratoires français Université de Franche-Comté LaRIA (Amiens) ENSEEIHT-IRIT, CERFACS (Toulouse) LSIIT (Strasbourg) IBCP PSMN

27 Positionnement au sein de l’INRIA
APACHE (INRIA Rhône-Alpes) Collaboration existante avec l’équipe de D. Trystram autour de l’ordonnancement Intérêt pour le déploiement automatique de logiciels SARDES (INRIA Rhône-Alpes) Utilisation des résultats de SARDES autour des intergiciels pour les plateformes distribuées ObjectWeb PARIS (INRIA-IRISA) Réutilisation de leurs développements autour de Grid Enabled Corba Plusieurs collaborations en cours (ARC INRIA, ACI GMD) ALGORILLE (Lorraine) Approches différentes (modélisation des applications vs heuristiques d’ordo) Plusieurs collaborations en cours (ARC INRIA, ACI GRID, RNTL) Grand Large (Futur) Approches différentes (calcul global dans son ensemble pour Grand Large) Collaborations existantes (CGP2P) et possibles (ordonnancement, sécurité, tolérance aux pannes, découverte de services) ScAlApplix (Futur) Approches différentes (ordonnancement statique vs dynamique), autres applications Collaborations existantes (MUMPS/Pastix, renumérotations, ARC INRIA)

28 Conclusions

29 Conclusions Des aspects intergiciels pour les plateformes distribuées et hétérogènes …. … aux aspects fondamentaux de l’algorithmique parallèle hétérogène et de l’ordonnancement Implications importantes dans les projets de grilles nationaux, européens et internationaux Visibilité nationale et internationale Rester proche des applications: calcul numérique « classique » mais aussi d’autres domaines (data-intensive) Collaborations industrielles autour des grilles de calcul

30 But ultime Problem Solving Environments
Plus de transparence, généricité, sécurité Unification des couches logicielles (Grid Forum) Couplage algorithmique et modèles avec les supports d’exécution et les architectures Pouvoir traiter à la fois les données et les calculs Virtual Data Tools Request Planning and Scheduling Tools Request Execution Management Tools Transforms Distributed resources (code, storage, computers, and network) Resource Management Services Security and Policy Other Grid Interactive User Tools Production Team Individual Investigator Other Users Raw data source

31 Domaines d’applications
Applications des solveurs creux Dynamique moléculaire Modèles numériques de terrain Simulation de circuits électroniques Biochimie Physique Bioinformatique Compilation à distance


Télécharger ppt "Algorithmique pour les plateformes distribuées et hétérogènes"

Présentations similaires


Annonces Google