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

É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


Luka Stanisic, Samuel Thibault, Arnaud Legrand, Brice Videau, Jean-François Méhaut. Modeling and Simulation of a Dynamic Task-Based Runtime System for Heterogeneous Multi-Core Architectures. Euro-par - 20th International Conference on Parallel Processing, Aug 2014, Porto, Portugal. Springer International Publishing Switzerland, pp.50-62, 2014, Euro-Par 2014, LNCS 8632

Cédric Augonnet, Samuel Thibault, Raymond Namyst, Pierre-André Wacrenier. StarPU: A Unified Platform for Task Scheduling on Heterogeneous Multicore Architectures. Euro-Par 2009, Aug 2009, Delft, Netherlands. 2009, LNCS

François Broquedis, Jérôme Clet-Ortega, Stéphanie Moreaud, Nathalie Furmento, Brice Goglin, et al.. hwloc: a Generic Framework for Managing Hardware Affinities in HPC Applications. IEEE. PDP 2010 - The 18th Euromicro International Conference on Parallel, Distributed and Network-Based Computing, Feb 2010, Pisa, Italy. 2010

François Broquedis, Olivier Aumage, Brice Goglin, Samuel Thibault, Pierre-André Wacrenier, et al.. Structuring the execution of OpenMP applications for multicore architectures. IEEE. International Parallel and Distributed Symposium (IPDPS 2010), Apr 2010, Atltanta, United States. 2010

Samuel Thibault, Raymond Namyst, Pierre-André Wacrenier. Building Portable Thread Schedulers for Hierarchical Multiprocessors: the BubbleSched Framework. EuroPar, Aug 2007, Rennes, France. 2007

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