Stage sur les stratégies d'ordonnancement tolérantes aux fautes pour les algorithmes itératifs
Anne Benoit et Yves Robert sont à la recherche de leur prochain étudiant de M2.
Contexte
Lancé en 2023 pour une durée de 6 ans, The NumPEx PEPR a pour objectif de contribuer à la conception et au développement de méthodes numériques et de composants logiciels qui équiperont les futures machines européennes Exascale et post-Exascale. NumPEx vise également à aider les applications scientifiques et industrielles à exploiter pleinement leur potentiel.
Plusieurs sources d’erreur peuvent avoir un impact sur l’exécution d’algorithmes itératifs sur des plates-formes à grande échelle. Elles
comprennent les erreurs d’arrêt, qui sont immédiatement détectées, et les erreurs silencieuses (corruptions silencieuses de données), qui peuvent être détectées par le biais d’un mécanisme de vérification. Les erreurs d’arrêt correspondent à des défaillances permanentes, par exemple des pannes de processeur. Les erreurs silencieuses sont des perturbations qui frappent et restent indétectées jusqu’à ce qu’elles se manifestent éventuellement par un comportement étrange de l’application. Les erreurs silencieuses proviennent de deux sources principales : les erreurs de calcul et les inversions de bits dans la mémoire.
La protection des algorithmes et des bibliothèques logicielles contre toutes ces erreurs est une préoccupation majeure au sein de la communauté HPC.
La manière standard de traiter les erreurs d’arrêt est le checkpoint-restart, et la période optimale de checkpoint est bien connue, au moins pour les temps d’inter-arrivée des erreurs IID sans mémoire. Cependant, l’atténuation de l’impact des erreurs silencieuses reste un défi ouvert. D’une part, la réplication (ou même la triplication pour éviter une réexécution séquentielle) fait parfaitement l’affaire, mais à un coût prohibitif. D’autre part, de nombreux détecteurs spécifiques aux applications ont été introduits, tels que les sommes de contrôle ABFT (Algorithm-Based Fault Tolerance), le recalcul d’un résidu, la vérification de l’orthogonalité
de certains vecteurs, l’application de filtres spatiaux et temporels sur un voisinage, etc. Ces détecteurs sont généralement limités à un type d’erreur particulier. Ces détecteurs sont généralement limités à un type d’erreur particulier. Un problème majeur est qu’ils peuvent soit ne pas détecter certaines erreurs, soit déclencher de nombreuses fausses alertes. En d’autres termes, ces détecteurs ne sont pas parfaits : leur rappel et leur précision ne sont pas de 100 %. La plupart des travaux publiés, sinon tous, partent du principe que les détecteurs sont parfaits, ce qui n’est pas réaliste.
La mission
Le premier (et principal) objectif de ce stage est de concevoir et d’évaluer des stratégies d’ordonnancement basées
sur une combinaison de points de contrôle et de détecteurs imparfaits afin de garantir une protection contre une source unique d’erreurs silencieuses avec une probabilité élevée. Cela nécessite d’introduire certaines hypothèses, telles que la limite supérieure de la latence de la détection, ou d’introduire des tests aléatoires sur les données.
La deuxième étape (qui pourrait intervenir plus tard au cours d’un doctorat) est de fournir une méthodologie holistique résiliente pour protéger les algorithmes itératifs
de tous les types d’erreurs, à savoir les erreurs de type fail-stop et toutes les sources d’erreurs silencieuses.
Ce stage devrait se poursuivre par une thèse de doctorat, pour laquelle un financement du programme NumPEx PEPR est déjà assuré.
Compétences requises
Quelques connaissances en conception d’algorithmes, en complexité et en probabilités.
Le travail porte sur l’aspect algorithmique du problème, avec des simulations potentielles pour valider les résultats.
Plus d'informations et références
Pour plus d’informations, veuillez contacter Anne Benoit([email protected]), Yves Robert([email protected]) ou Emmanuel Agullo([email protected]).