Thèse soutenue

Comprendre et améliorer les performances du système HPC à l'aide de l'apprentissage automatique et de l'analyse statistique

FR  |  
EN
Auteur / Autrice : Salah Zrigui
Direction : Denis TrystramArnaud Legrand
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 25/03/2021
Etablissement(s) : Université Grenoble Alpes
Ecole(s) doctorale(s) : École doctorale mathématiques, sciences et technologies de l'information, informatique (Grenoble ; 199.-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire d'informatique de Grenoble
Equipe de recherche : Équipe-projet Mouvements de données pour le calcul haute performance (Montbonnot, Isère ; 2021-....)
Jury : Président / Présidente : Frédéric Desprez
Examinateurs / Examinatrices : María S. Pérez-Hernández, Massih-Reza Amini, Patricia Stolf
Rapporteurs / Rapporteuses : Rizos Sakellariou, Jean-Marc Pierson

Mots clés

FR  |  
EN

Mots clés contrôlés

Résumé

FR  |  
EN

Les infrastructures de systèmes de calcul haute performance (HPC) augmentent rapidement en complexité et en échelle. De nouveaux composants et innovations sont ajoutés à un rythme rapide. Cela incite à redoubler d'efforts pour comprendre ces systèmes et concevoir de nouveaux schémas d'optimisation plus adaptés.Cette thèse regroupe une collection de travaux analytiques et expérimentaux avec deux objectifs. (i) Améliorer les performances des systèmes HPC en mettant l'accent sur les performances des gestionnaires de ressources. (ii) Mieux comprendre le fonctionnement interne des systèmes HPC, qui comprend les méthodes d'évaluation des ordonnanceurs et le comportement énergétique des jobs.Nous commençons par présenter une étude comparative. Nous nous concentrons sur les méthodes d'évaluation des ordonnanceurs en étudiant deux métriques classiques (temps d'attente et ralentissement) et une métrique moins étudiée (ralentissement par processeur). Nous évaluons également d'autres effets, tels que la relation entre la taille des jobs et le ralentissement, la distribution des valeurs de ralentissement et le nombre de jobs remplacés. Nous nous concentrons sur la politique populaire First-Come-First-Served (FCFS) et la comparons à d'autres heuristiques de planification simples. Nous montrons que l'abandon du FCFS n'est pas aussi risqué qu'on le perçoit. Nous soutenons que l'utilisation d'autres politiques combinées avec un simple mécanisme de seuillage peut offrir des garanties similaires avec des performances nettement meilleures.Ensuite, nous montrons les limites des heuristiques d'ordonnancement simples et nous concevons et testons deux paradigmes basés sur l'apprentissage automatique pour améliorer les performances au-delà de ce que ces heuristiques de base peuvent offrir. Tout d'abord, nous proposons une méthode pour générer de manière dynamique de nouvelles politiques d'ordonnancement qui s'adaptent à la nature changeante des données sur une plateforme donnée. Nous étudions également la possibilité d'appliquer l'apprentissage en ligne sur ce type des données, et nous détaillons les difficultés que l'on pourrait rencontrer dans une telle entreprise.Pour la deuxième approche, nous améliorons les performances des politiques d'ordonnancement déjà établies en réduisant l'incertitude dans les jobs. Plus précisément, l'inexactitude des estimations des temps d'exécution des utilisateurs. Nous proposons une classification simple des jobs en petits et grands selon leur taille. Nous montrons que cette classification est suffisante pour exploiter la plupart des améliorations qui peuvent être obtenues à partir d'estimations précises des délais d'exécution. Nous utilisons l'apprentissage automatique pour prédire les classes et améliorer les performances sur toutes les plateformes étudiées.Enfin, nous analysons la consommation énergétique des plateformes HPC. Nous étudions les profils énergétiques des jobs individuels et nous observons les similitudes et les différences entre les profils énergétiques. Puis, nous proposons une série de tests statistiques à travers lesquels nous classons les jobs en périodiques, constants et non stationnaires. Nous pensons que cette classification peut être utilisée pour prédire la consommation d'énergie des futurs jobs et pour construire des ordonnanceurs sensibles à l'énergie.