From

Horaires à

Lieu ENS Paris-Saclay

Thèses et HDR

Jean POURROY : Calcul Haute Performance :caractérisation d’architectures et optimisation d’applications pour les futures générations de super calculateurs

Directeurs de thèse : Patrick Demichel et Christophe Denis
Soutenance : 26/03/21

Ajouter au calendrier

Résumé :

Les systèmes d’information et les infrastructures de Calcul Haute Performance (HPC) participent activement à l’amélioration des connaissances scientifiques et à l’évolution de nos sociétés. Le domaine du HPC est en pleine expansion et les utilisateurs ont besoin d’architectures de plus en plus puissantes pour analyser le tsunami de données(simulations numériques, objets connectés),prendre des décisions plus complexes (intelligence artificielle), et plus rapides (voitures connectées, météo).Dans ce travail de thèse, nous discutons des différents challenges à relever (consommation électrique, coût, complexité) pour l’élaboration des nouvelles générations de supercalculateurs Exascale. Alors que les applications industrielles ne parviennent pas à utiliser plus de 10% des performances théoriques, nous montrons la nécessité de repenser l’architecture des plateformes, en utilisant notamment des architectures énergétiquement optimisées. Nous présentons alors certaines technologies émergentes permettant leur développement : les mémoires 3D (HBM), la Storage Class Memory (SCM) ou les technologies d’interconnexions photoniques. Ces nouvelles technologies associées à un nouveau protocole de communication (Gen-Z) vont permettre d’exécuter de façon optimale les différentes parties d’une application. Cependant, en l’absence de méthode de caractérisation fine de la performance des codes, ces architectures innovantes sont potentiellement condamnées puisque peu d’experts savent les valoriser. Notre contribution consiste au développement d’une suite de codes (micro-benchmarks) et d’outils d’analyse de performance. Les premiers ont pour objectifs de caractériser finement certaines parties de la micro architecture. Deux micro benchmark sont ainsi été développés pour caractériser le système mémoire et les unités de calculs. La deuxième famille d’outils permet d’étudier la performance des applications. Un premier outil permet de suivre l’évolution du trafic du bus mémoire, ressource critique des architectures. Un second outil permet d’obtenir le profil des applications en extrayant et caractérisant les boucles critiques (hot spots).Pour profiter de l’hétérogénéité des plateformes, nous proposons une méthodologie en5 étapes permettant d’identifier et de caractériser ces nouvelles plateformes, de modéliser les performances d’une application, et enfin de porter son code sur l’architecture choisie. Enfin, nous montrons comment les outils permettent d’accompagner les développeurs pour extraire le maximum des performances d’une architecture. En proposant nos outils en « sources ouvertes », nous souhaitons sensibiliser les utilisateurs à cette démarche et développer une communauté autour du travail de caractérisation et d’analyse de performance.