Samuel THIBAULT
Samuel Thibault Maître de Conférences (Université Bordeaux 1)

Équipe LaBRI : Supports et Algorithmes pour les Applications Numériques hAutes performanceS
Équipe projet commune INRIA-LaBRI : RUNTIME
Fonction administrative : Coordination UE à grands effectifs licence Informatique. Co-responsable de la licence pro ADSILLH
Page personnelle : http://dept-info.labri.fr/~thibault/
Courrier électronique : samuel.thibaultarobaselabri.fr
Bureau : INRIA
Tél : +33 (0)5 40 00


Recherche

Problématique

De nos jours, les machines multiprocesseurs ont des niveaux mémoire de plus en plus hiérarchisés: les systèmes Opterons sont en fait des NUMAs, les puces bicore peuvent partager un niveau de cache, on leur adjoint des cartes accélératrices, ... Comment ordonnancer correctement des calculs scientifiques non réguliers sur de telles machines ?! Il n'est plus réaliste de réaliser cet ordonnancement à la main, et l'on recourt à des ordonnanceurs dynamiques, qui permettent d'exploiter ces machines. Pour pouvoir optimiser l'ordonnancement, on utilise de nos jours de plus en plus le paradigme de tâches, auxquelles sont attachées des informations plus ou moins précises de durée, occupation mémoire, priorité, etc.


Ordonnancement de tâches sur systèmes hétérogènes, StarPU

Cédric Augonnet, durant sa thèse sous ma co-direction, a élaboré StarPU, un environnement pour ordonnancer des tâches sur des machines hétérogènes. L'idée est d'essayer d'effectuer toutes les optimisations à l'exécution: les transferts de données sont minimisés et effectués à l'avance, recouverts par les calculs, et interagissent avec les décisions d'ordonnancement de tâches. Ces dernières prennent en compte des modèles de performance des tâches, ce qui permet de capturer l'aspect hétérogène de la machine, et même d'en profiter !

StarPU est de plus en plus utilisé pour différents bibliothèques de calcul scientifique telles que l'algèbre linéaire (projet MORSE).

Nous avons étendu le modèle de programmation StarPU à l'exploitation distribuée de clusters à l'aide de MPI, ce qui pose des questions de passage à l'échelle.

Nous avons étendu la gestion des données de StarPU à l'utilisation des disques, permettant ainsi des calculs out of core, ce qui pose des questions d'optimisation des transferts.

La combinaison de StarPU avec Simgrid nous permet de simuler l'exécution, ce qui apporte non seulement un gain de temps pour observer les performances obtenues avec différentes heuristiques d'ordonnancement, mais aussi de modifier les paramètres de l'architectures simulée (bande passante, unités de calcul, ...) ! Plus généralement, avec la modularisation des ordonnanceurs StarPU, cela permet de fournir aux théoriciens une plate-forme pour tester différentes heuristiques sur des applications réelles, tout en évitant toutes les contraintes techniques de l'exécution réelle sur un système de production (fautes matérielles, versions de logiciels changeantes, ...).

Encadrement

Marc Sergent
Suraj Kumar

Extrait de publications












Autres productions

- Bibliotheque d'ordonnancement CPU/GPU StarPU http://starpu.gforge.inria.fr/
- Bibliotheque de detection de topologie hwloc http://www.open-mpi.org/projects/hwloc/
- Environnement d'execution virtualise leger "stubdomain" base sur MiniOS pour Xen
- Environnement d'execution OpenMP ForestGOMP http://runtime.bordeaux.inria.fr/forestgomp/
- Plateforme BubbleSched au sein de la Bibliotheque de processus legers Marcel http://runtime.bordeaux.inria.fr/marcel/


Responsabilité pédagogique

Responsable UE Initiation à l'Informatique
Responsable Licence pro ADSILLH


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