Sujet : Ordonnancement et qualité de service pour environnements multi-modèles

Responsables : Olivier Aumage et Guillaume Mercier

Téléphone : 05 40 00 38 73

e-mail : olivier.aumage@labri.fr

Équipe : Supports et AlgoriThmes pour les Applications Numériques hAutes performanceS

Thème : Supports exécutifs hautes performances

Présentation du sujet : Ce sujet s'inscrit dans le cadre de la participation de RUNTIME (projet commun INRIA/LaBRI) à une action de collaboration académique financée par l'Agence Nationale pour la Recherche (projet LEGO). Le domaine du calcul haute performance distribué fait l'objet depuis une quinzaine d'efforts soutenus de recherche en termes de logiciels d'aide à la programmation et à l'exploitation des plates-formes de calcul distribué, initialement des grappes de quelques PCs et maintenant de vastes interconnexions de grandes grappes disséminées géographiquement, appelées grilles. Chacun de ces logiciels cible une problématique plus ou moins large relative au calcul distribué : découverte/allocation de ressources, déploiement, échanges distribués (selon divers modèles tels que l'échange de messages, les appels de procédure à distance, ou encore les mémoires distribuées virtuellement partagées), stockage/entrées-sorties distribués, contrôle interactif, visualisation, etc. Le projet LEGO regroupe notamment plusieurs équipes de recherche impliquées dans divers aspects de support au calcul distribué: le projet GRAAL à Lyon (LIP, ENS Lyon) contribue le logiciel DIET, le projet PARIS à Rennes (IRISA) contribue les logiciels JuxMem et Adage, l'IRIT à Toulouse (ENSEEIHT) contribue TLSE et RUNTIME à Bordeaux contribue les logiciels NewMadeleine, MPICH-Mad et PadicoTM. Les participants de LEGO se sont fixé comme objectif la mise en commun collaborative de certains de ces outils et environnements pour le calcul distribué à grande échelle, afin de bénéficier de leur utilisation conjointe et de la combinaison de modèles de programmation complémentaires au sein d'une même application ou d'un même conglomérat applicatif. Or, les outils et environnements pour le calcul distribué ont par nature en commun de reposer sur des communications. Cette mise en commun visée dans LEGO implique donc la génération de multiples flots de communication entre les différents noeuds, avec des caractéristiques et contraintes bien distinctes et fortement marquées par le modèle qu'elles sous-tendent (communications interactives basse latence, redistributions de données avec nécessité de haut débit, etc.) Cette multitude de flots excède par ailleurs largement les possibilités de multiplexage physique particulièrement réduites offertes par les technologies réseaux actuelles. Il est donc nécessaire de multiplexer de façon logicielle les nombreux flux logiques sur les ressources de multiplexage physiques.

RUNTIME élabore depuis environ un an une nouvelle architecture de communication pour réseaux rapides nommée NewMadeleine. Sa principale originalité réside dans son moteur d'optimisation des transferts de données qui, tout en exploitant les informations fournies par l'interface (dépendances entre segments, contraintes temporelles), permet d'appliquer dynamiquement des stratégies d'ordonnancement et d'optimisation génériques. La bibliothèque assure une progression des communications décoréllée de l'application, ce qui lui permet de déclencher les optimisations just-in-time, en fonction de l'activité des cartes réseau. Entre chaque paire de processus, les optimisations ont une portée globale aux flux de données, quel que soit le nombre de canaux de communications utilisés, ce qui permet des optimisations opportunistes et agressives.

L'objectif de ce mémoire est donc, dans ce contexte, d'étudier les modalités 1) d'expression des contraintes spécifiques des différents flux (priorité, latence, débit, réactivité, etc.) et 2) de réalisation d'un mixage dynamique approprié de ces flux au sein de l'ordonnanceur de communication NewMadeleine développé dans RUNTIME pour les réseaux rapides. L'idée est de mettre en place une notion de "qualité de service" dans les environnement de communication hautes performances. En particulier, les environnements cibles privilégiés seront la bibliothèque MPICH2, l'environnement DIET et l'environnement PadicoTM, et la validation des techniques proposées devra montrer que les performances de MPICH2 au-dessus de NewMadeleine ne sont pas altérées en présence de flux sous-prioritaires issus de DIET par exemple. L'étude pourra notamment s'inspirer des travaux sur l'ordonnancement de processus, ainsi que les travaux sur la thématique de qualité de service sur les réseaux traditionnel. Cette étude sera conduite en collaboration étroite avec les membres de runtime en charge du développement de MPICH2-NewMadeleine à l'interface directe avec les applications cibles de LEGO, mais aussi de PadicoTM, et les équipes impliquées dans LEGO.
 

Mot-clés : calcul intensif distribué, ordonnancement, optimisation, communication haute performance, réseau rapide

Références :

 

Commentaires éventuels :