Profilage et débogage par prise de traces efficaces d'applications hybrides multi-threadées HPC
Auteur / Autrice : | Jean-Baptiste Besnard |
Direction : | William Jalby |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance en 2014 |
Etablissement(s) : | Versailles-St Quentin en Yvelines |
Ecole(s) doctorale(s) : | Ecole doctorale sciences et technologies de Versailles (2010-2015) |
Partenaire(s) de recherche : | Entreprise : Commissariat à l’énergie atomique et aux énergies alternatives. Direction des application militaires Île-de-France (Arpajon) |
Equipe de recherche : Laboratoire Parallélisme, Réseaux, Systèmes, Modélisation (PRISM) | |
Jury : | Président / Présidente : Alfredo Goldman |
Examinateurs / Examinatrices : Marc Pérache | |
Rapporteur / Rapporteuse : Allen Malony, Michael Krajecky |
Mots clés
Mots clés contrôlés
Résumé
L’évolution des supercalculateurs est à la source de défis logiciels et architecturaux. Dans la quête de puissance de calcul, l’interdépendance des éléments du processus de simulation devient de plus en plus impactante et requiert de nouvelles approches. Cette thèse se concentre sur le développement logiciel et particulièrement sur l’observation des programmes parallèles s’exécutant sur des milliers de cœurs. Dans ce but, nous décrivons d’abord le processus de développement de manière globale avant de présenter les outils existants et les travaux associés. Dans un second temps, nous détaillons notre contribution qui consiste d’une part en des outils de débogage et profilage par prise de traces, et d’autre part en leur évolution vers un couplage en ligne qui palie les limitations d’entrées–sorties. Notre contribution couvre également la synchronisation des horloges pour la prise de traces avec la présentation d’un algorithme de synchronisation probabiliste dont nous avons quantifié l’erreur. En outre, nous décrivons un outil de caractérisation machine qui couvre l’aspect MPI. Un tel outil met en évidence la présence de bruit aussi bien sur les communications de type point-à-point que de type collective. Enfin, nous proposons et motivons une alternative à la collecte d’événements par prise de traces tout en préservant la granularité des événements et un impact réduit sur les performances, tant sur le volet utilisation CPU que sur les entrées–sorties