Alexandre Denis

Alexandre Denis
Chargé de Recherches
INRIA
Département
SATANAS
Équipe
Topology-aware system-scale data management for high-performance computing
Page personnelle
http://runtime.bordeaux.inria.fr/adenis/
Adresse E-mail
alexandre.denis[at]labri.fr
Bureau
INRIA
Tel
+33 (0)5 24 57 41 14

Recherche

\paragraph{Communications pour grilles de calcul.}
Les grilles de calcul sont par essence hétérogènes et distribués à grande échelle. Elles servent avant tout pour des applications complexes, typiquement couplant plusieurs codes différents. Pour gérer les communications de telles applications sur les grilles, j'ai proposé la plate-forme de communication PadicoTM. Elle tire sa flexibilité de l'usage de composants logiciels pour construire les piles de communication pour de nombreux intergiciels, en particulier CORBA et MPI. Par ailleurs, l'utilisation de virtualisation des ressources permet une réutilisation sans modification des codes patrimoniaux faisant parfois plusieurs millions de lignes de code issus de plusieurs années de développement.
La plate-forme PadicoTM a été valorisée principalement dans les projets ANR LEGO et COOP, ainsi que dans la coopération franco-japonaise NEGST. Les expérimentations ont été menées sur la plate-forme Grid'5000.

\paragraph{Optimisation des communications sur grappes.}
Les codes de calcul devenant complexes et multi-paradigme, il n'est pas rare désormais d'avoir plusieurs flux de communication simultanés partageant une même carte réseau sur une grappe de calcul. J'ai travaillé, en collaboration avec Elisabeth Brunet, a des schéma d'optimisation de tels flux simultanés dans la biliothèque de communication NewMadeleine. Nous avons proposé des stratégies d'aggrégation, de réordonnancement, de multi-rail, en se basant sur des heuristiques ou sur un échantillonage des performances réelles des cartes réseau. Ces résultats ont été valorisé dans le projet ANR LEGO ainsi que le PHC Sakura avec l'université de Tokyo.

\paragraph{Gestion des interactions entre communications et threads.}
Avec l'avènement des processeurs multi-coeur, de nouveaux modèles de programmation ont hémergé, en particulier les modèles hybrides mélant l'usage de plusieurs noeuds à l'aide du réseau, et le multi-threading à l'intérieur d'un noeud. Il devient donc nécessaire de gérer les communications en contexte multi-thread. Avec mon doctorant François Trahay, nous avons proposé PIOMan, un gestionnaire d'entrée/sortie qui travaille conjointement avec l'ordonnanceur de threads. Par exemple, les attentes sont gérées en attente active ou passive selon la charge de la machine, et peuvent être exportées vers un coeur libre le cas échéant, pour avoir une progression en tâche de fond permettant un vrai recouvrement entre calcul et communications. PIOMan est utilisé notamment par NewMadeleine et PadicoTM.

Responsabilité pédagogique

Responsabilité de l'UE "Systèmes et supports d'exécution pour le calcul parallèle et distribué", Master 2, semestre 1, 37h Eq TD

Extrait de publications