Caractérisation matérielle de microbenchmarks pour le placement de tâche

Encadrants

Brice Goglin (Brice.Goglin@inria.fr) & Nicolas Denoyelle (nicolas.denoyelle@inria.fr)

Le stage s'effectuera dans la nouvelle équipe Inria TADaaM du centre de recherche INRIA Bordeaux - Sud-Ouest. Les principaux outils sont développés dans cette équipe.

Contexte du stage

Le placement de tâche est connu pour être un facteur important pour réduire la durée d'exécution d'un programme. Plusieurs techniques de placement ont vu le jour ces dernières années, mais aucune ne permet d'améliorer de manière systématique les performances des applications. Afin d'approcher une solution à ce problème, il est nécessaire de trouver une bonne caractérisation à la fois des applications et de la machine. Le placement peut-être effectuée de manière dynamique (e.g à l'exécution) en fonction des besoins de l'application. Il se peut alors que notre meilleur source d'information provienne des compteurs matériels. TSVC et mbench sont deux suites de microbenchmarks qui peuvent servir comme modèle d'application pour observer des comportements élémentaires. On pourra utiliser la bibliothèque hwloc (Hardware Locality) pour extraire la topologie de la machine et une extension(plstopo) en cours de développement, basée sur PAPI pour faire le lien entre l'application et la machine.

Objectifs du stage

L'objectif du stage est de valider et/ou invalider des métriques matérielles qui permettent de classer les applications pour le placement. Afin de se ramener à un cas simple on considèrera uniquement le cas de tâches indépendantes. Ces tâches pourront être des fonctions simples issues des microbenchmarks cités précedemment. On pourra par exemple commencer par enregistrer la trace de différents compteurs matériels pour une tâche puis observer leur évolution en multipliant le nombre tâche et en variant leur configuration. Ces tests pourront notamment être menés sur la plate-forme parallèle PlaFRIM et sur les machines parallèles expérimentales de l'équipe.

Références

Pistes de bibliographie

  • Can Hardware Performance Counters Produce Expected, Deterministic Results?
  • Analyzing resource interdependencies in multi-core architectures to improve scheduling decisions
  • Profil et compétences

    Rémunération

    Possible, environ 400 euros par mois.