Guillaume MERCIER
Guillaume Mercier Maître de Conférences (ENSEIRB)

Équipe LaBRI : Supports et Algorithmes pour les Applications Numériques hAutes performanceS
Équipe projet commune INRIA-LaBRI : RUNTIME
Courrier électronique : guillaume.mercierarobaselabri.fr
Bureau : INRIA
Tél : +33 (0)5 40 00


Recherche

Mas activités de recherche portent sur l'élaboration d'outils efficaces et de modèles de
programmation pertinents destinés aux architectures parallèles complexes récentes telles
que les grappes de NUMA ou encore les machines multicoeur.
En particulier, j'ai beaucoup travaillé sur le standard MPI (Message Passing Interface)
qui est massivement utilisé depuis plus de dix ans pour le développement d'applications
parallèles. Durant ma thèse (2002 -> 2004), j'ai conçu une implémentation de MPI capable
de tirer parti d'architectures non triviales, comme les grappes de grappes, possédant des
réseaux haut-débit hétérogènes. Ces travaux, bénéficiant d'une certaine visibilité
dans la communauté et notamment au Japon et aux Etats-Unis, m'ont permis de rejoindre
l'équipe créatrice d'une des principales implémentations libres de MPI : MPICH.
En intégrant cette équipe de l'Argonne National Laboratory à Chicago pour un poost-doctorat,
j'ai retravaillé sur l'architecture de MPICH2 afin de permettre à cette implémentation
d'exploiter efficacement les communications en mémoire partagée. En effet, des
communications rapides dans un tel contexte sont la base nécessaire à une exploitation
optimale des noeuds multicoeurs dans un contexte MPI. En particulier, j'ai conçu et
développé un système de communication hautes-performances pour les machines multicoeurs
qui sert de fondation au logiciel MPICH2. Depuis mon recrutement en tant que Maître
de Conférences à l'ENSEIRB, j'ai poursuivi ces recherches en intégrant à Nemesis des
supports efficaces pour les réseaux rapides comme Quadrics ou encore Myrinet.
En particulier, j'ai travaillé sur l'intégration de la bibliothèque de communication
NewMadeleine (développée dans l'équipe-projet INRIA Runtime) dans Nemesis afin de
faire bénéficier à MPICH2 des nombreuses optimisations offertes par NewMadeleine.
J'ai également travaillé sur le support des système multirails dans NewMadeleine
et MPICH2. Les performances de Nemesis sont telles que cet élément logiciel est maintenant
le support de communication officiel de MPICH2 depuis 2009. Il est très souvent
utilisé dans la communauté MPI aen tant qu'implémentation de référence du point de
vue des performances. Les utilisateurs de MPICH2 étant très nombreux, ils sont
donc également utilisateurs de mes travaux. La diffusion et la dissémination
sont donc très bonnes. Par ailleurs, d'importants acteurs industriels du domaine
Intel, Microsoft) envisagent de distribuer ce logiciel (et donc le résultat de
mes travaux) dans le cadre de leur offre logicielle concernant MPI.

Ces travaux possèdent une forte visibilité internationale et me conduisent à régulièrement
travailler avec des collègues étrangers. De multiples collaborations sont actuellement
en cours :

- depuis 2008, l'INRIA soutient une collaboration entre l'Equipe-Projet INRIA Runtime et
l'équipe Radix (Argonne National Laboratory) qui est responsable de MPICH2.
Cette collaboration a pris la forme d'une Equipe Associée INRIA dont je suis le responsable
du côté Français.

- depuis 2009, je travaille dans le cadre d'un PAI Sakura avec l'équipe du Professeur Yutaka Ishikawa, de l'université de Tokyo qui développe une autre implémentation libre de MPI appelée YAMPI.

Dans la continuté de mes travaux sur le modèle du passage de message, je travaille également
sur des modèles de programmation dits "hybrides", où sont mélangés le paradigme MPI avec
un autre comme par exemple le multithreading.

Extrait de publications













Responsabilité pédagogique

- Responsable des enseignements informatique au sein du département Télécom de l'ENSEIRB

- Responsable des stages industriels de deuxième année au sein du département Télécom de l'ENSEIRB
(de 2006 à 2009)

- Responsable des relations internationales au sein du département Télécom de l'ENSEIRB (depuis 2009)

- Responsable de la troisième année de la Filière "Réseaux et Systèmes d'Information" de l'ENSEIRB

- Responsable de l'UE "Systèmes d'Exploitation", 2ème année Télécom ENSEIRB, semestre 3, 38h eqTD

- Responsable de l'UE "Projet Réseaux et Systèmes", 2ème année Télécom ENSEIRB, semestre 3, 32h eqTD

- Responsable de l'UE "Programmation Système", 2ème année Télécom ENSEIRB, semestre 4, 38h eqTD

- Responsable de l'UE "Introduction aux Systèmes d'Exploitation", 2ème année RSI ENSEIRB, semestre 3, 45h eqTD

- Responsable de l'UE "Langages du parallélisme", 3ème année Informatique ENSEIRB, semestre 5, 30h eqTD

- Responsable de l'UE "Programmation Impérative", 1ère année Télécom ENSEIRB, semestre 1, 25h eqTD

Administration

- Depuis 2008 ; responsable de l'Equipe Associée INRIA MPI-Runtime entre Runtime et
l'Argonne National Laboratory (budget 2008, 22kEuros)

- Depuis 2009 : élu du Comité de Centre INRIA Bordeaux Sud-Ouest


Page mise à jour le 13/08/2010 à 10:56