Title: LIP ENS Lyon
1Algorithmique pour les plateformes distribuées
et hétérogènes
- LIP ENS Lyon
- INRIA Rhône-Alpes
2Plan 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
3Effectifs
- Permanents
- E. Caron (MdC ENS)
- F. Desprez (DR2 INRIA, responsable)
- J.-Y. LExcellent (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
4Introduction et fondements
5Caracté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 larchitecture
- Équilibrage des charges (ordonnancement)
- Distribution des données
- Évaluation des performances, modélisation
- Informations sur la charge en temps réel
- Réactivité !
6Nouveau 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 lexé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 lINRIA  Maîtriser
linfrastructure numérique en sachant programmer,
calculer et communiquer sur lInternet et sur des
réseaux hétérogènesÂ
7Algorithmique et ordonnancement
Y. Robert, F. Vivien
8Algorithmique 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
9Algorithmique et ordonnancement Résultats (1/2)
- ALGORITHMIQUE
- 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
10Algorithmique 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
11Algorithmique et ordonnancement Perspectives
- ALGORITHMIQUE
- 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
12Algorithmique pour le creux
J.-Y. LExcellent, G. Utard
13Méthodes directes pour la résolution de systèmes
linéaires creux de grande taille
Résolution dun système linéaire creux Axb
Simulation dun 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
14Mé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
15Mé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 dexpertise (portail Web) avec comparaison Ã
distance dune 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 lindustrie Boeing, EADS, CEA, Dassault, - Rester à lécoute des besoins des utilisateurs
numériciens - Maintenir une plateforme dexpé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)
16Mé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 lordonnancement
- couplage avec des méthodes itératives
- phase danalyse 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
17Approche client serveur pour la simulation
E. Caron, F. Desprez, J.-M. Nicod, L. Philippe
Voir Eddy !
18Serveurs de calculs Objectifs
- Fournir de la puissance de calcul à travers
lInternet - Développer une boîte-à -outils pour le
déploiement denvironnements 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)
- lintergiciel (plateforme logicielle DIET,
Distributed Interactive Engineering Toolbox) - Participation au Global Grid Forum (GridRPC WG)
19AGENT
- Partie centrale des systèmes GRID-RPC
- 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é dagents
- Parcours darbres avec informations réparties
dans les nœuds pour lapproche 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
20Ordonnancement
- 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 larchitecture 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 dun flot de requêtes (connaissance
 statique des dépendances et graphe de
lapplication) - 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
21Gestion 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
E. Caron, J.-M. Nicod, L. Philippe, G. Utard
22Évaluation de nouvelles technologies logicielles
- Relations fortes entre dune part les couches
logicielles utilisées pour développer les
environnements et les applications et dautre
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
23Logiciels
- Scilab//
- 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 lajout 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, lENSEEIHT-IRIT et
PARA//AB - Plateforme dexpérimentation et de valorisation
- SimGrid
- Toolkit de simulation à événements discrets pour
la simulation dheuristiques dordonnancement - Insertion de traces réelles
- Amélioration dans GRAAL (simulation dagents
communicants) - En collaboration avec UCSD
24Contrats et projets nationaux
- ARC INRIA RedGRID redistribution de données en
environnement hétérogène - ACI Grid
- ASP déploiement dapplications
sur plateforme DIET - TLSE site dexpertise 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
25Contrats 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 dexcellence
- CoreGRID (6ème PRCD)
26Collaborations 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
27Positionnement au sein de lINRIA
- APACHE (INRIA Rhône-Alpes)
- Collaboration existante avec léquipe de D.
Trystram autour de lordonnancement - 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 dordo) - 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)
28Conclusions
29Conclusions
- Des aspects intergiciels pour les plateformes
distribuées et hétérogènes . - aux aspects fondamentaux de lalgorithmique
parallèle hétérogène et de lordonnancement - 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 dautres domaines
(data-intensive) - Collaborations industrielles autour des grilles
de calcul
30But 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 dexécution et les architectures - Pouvoir traiter à la fois les données et les
calculs
31Domaines dapplications
- Applications des solveurs creux
- Dynamique moléculaire
- Modèles numériques de terrain
- Simulation de circuits électroniques
- Biochimie
- Physique
- Bioinformatique
- Compilation à distance