Thèse soutenue

Stratégies de distribution d'applications basées sur des tâches sur des plates-formes hétérogènes

FR  |  
EN
Auteur / Autrice : Lucas Leandro Nesi
Direction : Arnaud LegrandLucas Mello Schnorr
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 14/09/2023
Etablissement(s) : Université Grenoble Alpes en cotutelle avec Universidade Federal do Rio Grande do Sul (Porto Alegre, Brésil)
Ecole(s) doctorale(s) : École doctorale Mathématiques, sciences et technologies de l'information, informatique (Grenoble, Isère, France ; 1995-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire d'informatique de Grenoble (Isère, France ; 2007-....)
Jury : Président / Présidente : Marcus Ritt
Examinateurs / Examinatrices : Yves Denneulin, Hatem Ltaief, E. Khaterine Isaacs
Rapporteurs / Rapporteuses : François Trahay, Alba Cristina M. A. Melo, Sascha Hunold

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

Les plates-formes HPC sont amplement hétérogènes en raison des ressources intra-nœuds, comme les accélérateurs, et de l'hétérogénéité inter-nœuds lorsqu'il y a différentes machines. Les applications qui utilisent ces ressources sont déjà très complexes, avec de nombreuses opérations et phases distinctes, et les développeurs doivent prendre en compte tous les diverses ressources informatiques. Le paradigme de la programmation basée sur les tâches est une alternative moderne pour augmenter l'efficacité de calcul des ressources hétérogènes intra-nœud tout en maintenant une relative simplicité de développement. L'application définit un graphe acyclique direct de tâches et un moteur d'exécution dynamique les planifie de manière asynchrone sur les ressources en respectant les dépendances des tâches. Cependant, la gestion de différents types de nœuds nécessite de nouvelles stratégies spécifiques pour distribuer une application dans cet environnement asynchrone et hétérogène. Cette thèse étudie le problème de la distribution de ce type d'applications complexes basées sur des tâches sur ces diverses ressources au niveau du système, en proposant des stratégies pour diviser leur charge correctement, en tenant compte de l'hétérogénéité de calcul, de l'asynchronisme à phases multiples et de l'adaptabilité. Ce travail utilise des applications réelles pour valider ses résultats avec des expériences menées dans de grands bancs d'essai et un superordinateur. Les principales contributions de la thèse sont les suivantes. (i) Stratégies de distribution d'une opération d'application unique en tenant compte du compromis entre la communication, le chemin critique et l'équilibrage de la charge hétérogène. (ii) Un ensemble d'optimisations pour améliorer le chevauchement des phases asynchrones dans les applications. (iii) Une méthodologie pour calculer la puissance relative de chaque phase sur chaque groupe hétérogène de nœuds en tenant compte du chevauchement des phases. (iv) Une stratégie de distribution pour une phase antérieure réduisant la redistribution des communications. (v) Une stratégie d'adaptation dynamique de l'application pendant l'exécution pour décider du meilleur sous-ensemble de nœuds pour chaque phase. (vi) Une analyse complète des expériences qui inclut une méthodologie pour analyser la progression de l'application par nœud qui résiste à l'hétérogénéité et qui peut regrouper les nœuds ayant un comportement similaire. En fin de compte, cette thèse constitue une étape vers l'exploitation et la combinaison efficaces de ces diverses ressources, en les utilisant pour mieux gérer les besoins distincts des applications et améliorer leurs performances globales.