A la recherche de la haute performance pour les codes de calcul et la visualisation scientifique
Auteur / Autrice : | Guillaume Colin de Verdière |
Direction : | Michaël Krajecki |
Type : | Thèse de doctorat |
Discipline(s) : | Info - Informatique |
Date : | Soutenance le 16/10/2019 |
Etablissement(s) : | Reims |
Ecole(s) doctorale(s) : | École doctorale Sciences du Numérique et de l’Ingénieur (Reims ; 2018-) |
Partenaire(s) de recherche : | Laboratoire : Centre de Recherche en Sciences et Technologies de l'Information et de la Communication (Reims, Marne ; 2004-....) |
Jury : | Président / Présidente : Guillaume Gellé |
Examinateurs / Examinatrices : Michaël Krajecki, François Bodin, William Jalby, Olivier Flauzac, Charles D. Hansen, Céline Hudelot | |
Rapporteurs / Rapporteuses : François Bodin, William Jalby |
Mots clés
Mots clés contrôlés
Résumé
Cette thèse vise à démontrer que l'algorithmique et la programmation, dans un contexte de calcul haute performance (HPC), ne peuvent être envisagées sans tenir compte de l'architecture matérielle des supercalculateurs car cette dernière est régulièrement remise en cause.Après avoir rappelé quelques définitions relatives aux codes et au parallélisme, nous montrons que l'analyse des différentes générations de supercalculateurs, présents au CEA lors de ces 30 dernières années, permet de dégager des points de vigilances et des recommandations de bonnes pratiques en direction des développeurs de code.En se reposant sur plusieurs expériences, nous montrons comment viser une performance adaptée aux supercalculateurs et comment essayer d'atteindre la performance portable voire la performance extrême dans le monde du massivement parallèle, incluant ou non l'usage de GPU.Nous expliquons que les logiciels et matériels dédiés au dépouillement graphique des résultats de calcul suivent les mêmes principes de parallélisme que pour les grands codes scientifiques, impliquant de devoir maîtriser une vue globale de la chaîne de simulation. Enfin, nous montrons quelles sont les tendances et contraintes qui vont s'imposer à la conception des futurs supercalculateurs de classe exaflopique, impactant de fait le développement des prochaines générations de codes de calcul.