Thèse soutenue

Solveurs hybrides directs-itératifs pour les systèmes indéfinis et surdéterminés sur les futures architectures exascale

FR  |  
EN
Auteur / Autrice : Philippe Leleux
Direction : Michel DaydéDaniel RuizUlrich Ruede
Type : Thèse de doctorat
Discipline(s) : Mathématiques Appliquées
Date : Soutenance le 03/02/2021
Etablissement(s) : Toulouse, INPT en cotutelle avec Friedrich-Alexander-Universität Erlangen-Nürnberg. Lehrstuhl für mittelalterliche Geschichte
Ecole(s) doctorale(s) : École doctorale Mathématiques, informatique et télécommunications (Toulouse)
Partenaire(s) de recherche : Laboratoire : Centre Européen de Recherche et Formation Avancées en Calcul Scientifique (Toulouse)
Jury : Président / Présidente : Frédéric Nataf
Examinateurs / Examinatrices : Michel Daydé, Daniel Ruiz, Ulrich Ruede, Harald Koestler, Heike Fassbender, Alison Ramage
Rapporteurs / Rapporteuses : Andreas Frommer

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

Dans le domaine du calcul scientifique, la simulation numérique de systèmes est cruciale afin d'obtenir une compréhension profonde de la physique dans des applications réelles. En simulation, les modèles utilisés sont souvent basés sur des équations aux dérivées partielles(EDP) discrétisées qui donnent à résoudre des larges systèmes d'équations linéaires. 2 classes de méthodes sont utilisées pour la solution de ces systèmes: les méthodes directes, robustes mais chères en calcul et mémoire; et les méthodes itératives, peu chères mais dont la convergence dépend du problème. Dans un contexte de calcul haute performance, les approches hybrides ont ensuite été introduites afin de combiner les avantages des deux méthodes, tout en faisant un usage efficace des infrastructure de calculs toujours plus grandes et rapides. Dans cette thèse, nous nous intéressons à ce dernier type de méthodes dans deux axes de recherche principaux. Dans un premier chapitre, nous décrivons les mécanismes nécessaires à l'implémentation efficace des méthodes de décomposition de domaine et des méthodes multi grilles. Ces dernières utilisent des niveaux de grilles de raffinement croissant pour calculer la solution via l'utilisation alternée de lisseurs et de correction sur grille grossière. Leur implémentation parallèle est difficile. La résolution du problème sur la grille grossière est problématique en terme d'efficacité parallèle aux grandes échelles. Nous proposons d'agglomérer les données du problème grossier sur un sous-ensemble des unités de calcul afin de minimiser le temps d'exécution d'un solveur direct sur cette grille. Notre approche, combinée avec une relaxation de la précision de la solution, permet d'améliorer la scalabilité de la méthode multigrilles comparée à l'utilisation d'un solveur itératif, quand le problème est numériquement difficile. Nous démontrons l'efficacité de notre approche dans le framework HHG (Hierarchical Hybrid Grids) pour la solution d'un problème de Stokes avec coefficient très variable, inspiré de la simulation du manteau terrestre. Le solveur direct utilisé sur la grille grossière est MUMPS, combiné avec une approximation par blocs de rang faible et l'utilisation d'une arithmétique simple précision. Dans les chapitres suivants, nous étudions des méthodes hybrides dérivées de la méthode de projection par ligne Cimmino, et interprétées comme des méthodes de décomposition de domaine. La méthode Cimmino est basée sur le partitionnement de la matrice en blocs de lignes. Cette méthode, dont la convergence est lente, est ici accélérée avec une version bloc stabilisée du gradient conjugué. Bien qu'un bon choix de bloc améliore l'efficacité de cette approche, sa convergence dépend du problème. Une alternative consiste à placer le système dans un espace augmenté avec des variables additionnelles. Les deux approches sont étendues pour le calcul de solution de norme minimale pour des problèmes sous-déterminés, et la solution de problèmes de moindres carrés. Ces derniers nécessitent un partitionnement de la matrice en blocs de colonnes. Nous montrons ensuite comment améliorer les propriétés numériques des version itérative et pseudo-directe grâce à des méthodes de scaling, de partitionnement et d'augmentation bien choisies. Les deux méthode sont implémentées dans le solveur parallèle ABCD-Solveur(Augmented Block Cimmino Distributed solver), dont nous améliorons la parallélisation grâce à une combinaison de techniques pour équilibrer la charge de calcul, et minimiser les communications. Finalement, pour la solution de problèmes d'EDP, nous proposons une nouvelle approche dans laquelle le système linéaire est augmenté en se basant sur une vision grossière de l'espace. La taille de l'augmentation est contrôlée par le choix du niveau de grille. Nous obtenons une méthode itérative avec convergence linéaire rapide. Le point central de cette approche est la construction et l'approximation d'équations de contraintes additionnelles