Thèse soutenue

Un simulateur pour le calcul haute performance : modélisation multi-niveau de l'interconnect BXI pour prédire les performances d'applications MPI

FR  |  
EN
Auteur / Autrice : Julien Emmanuel
Direction : Matthieu Moy
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 08/03/2023
Etablissement(s) : Lyon 1
Ecole(s) doctorale(s) : École doctorale en Informatique et Mathématiques de Lyon (2009-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire de l'informatique du parallélisme (Lyon ; 1988-....)
Jury : Président / Présidente : Arnaud Legrand
Examinateurs / Examinatrices : Matthieu Moy, Martin Quinson, Camille Coti, Isabelle Guérin-Lassous, Marc Pérache
Rapporteurs / Rapporteuses : Martin Quinson, Camille Coti

Résumé

FR  |  
EN

Pour obtenir les meilleures performances possibles dans les supercalculateurs, il est aujourd’hui nécessaire d’utiliser des réseaux d’interconnexion de plus en plus sophistiqués. C’est pour répondre à ce besoin que Bull produit le réseau BXI, composé de cartes réseau (NIC) et de commutateurs (switches). Le paramétrage optimal de ce matériel est une problématique complexe, en particulier parce que l’espace de paramètres que l’on souhaite explorer est grand, et qu'il n’est pas possible de faire des expériences réelles permettant d'explorer cet espace. Ainsi, on souhaite utiliser un simulateur pour évaluer les performances d'une application donnée pour un ensemble de paramètres. La principale difficulté rencontrée lors du développement de tels simulateurs provient de la complexité de la pile logicielle utilisée sur les grappes de calcul que l'on souhaite simuler : les applications scientifiques sont souvent programmées à un haut niveau d'abstraction et leurs communications traversent plusieurs couches logicielles avant d'être exécutées par le matériel. Il faut donc choisir laquelle de ces couches logicielle intercepter en simulation, afin de garantir une bonne précision tout en conservant des performances acceptables. Notre contribution prend la forme d'un simulateur du réseau BXI, qui propose un modèle simplifié du matériel, tout en permettant l'exécution d'applications complètes sur plusieurs machines simulées. Ce simulateur permet de prendre en compte les spécificités de toutes les couches logicielles intermédiaires entre le NIC et l'application simulée, moyennant des modifications mineures dans celles-ci. Nous validons ce modèle expérimentalement en comparant l'exécution de benchmarks sur une grappe de calcul équipée de matériel BXI et la simulation de ces benchmarks dans notre simulateur. Ce modèle bas niveau ayant un coût en performance non négligeable, nous présentons également une méthodologie pour alterner dynamiquement entre plusieurs modèles de précision différente au cours de l'exécution d'une simulation, afin de permettre à l'utilisateur de paramétrer au mieux quelles parties de l'application doivent être simulées avec le plus de précision.