Thèse soutenue

Algorithmes d'ordonnancement et schémas de résilience pour les pannes et les erreurs silencieuses

FR  |  
EN
Auteur / Autrice : Aurélien Cavelan
Direction : Anne Benoit
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 07/07/2017
Etablissement(s) : Lyon
Ecole(s) doctorale(s) : École doctorale InfoMaths (Lyon ; 2009-....)
Partenaire(s) de recherche : établissement opérateur d'inscription : École normale supérieure de Lyon (Lyon ; 2010-...)
Laboratoire : Laboratoire de l'informatique du parallélisme (Lyon ; 1988-....) - Optimisation des ressources : modèles, algorithmes et ordonnancement
Jury : Président / Présidente : Alain Girault
Examinateurs / Examinatrices : Anne Benoit, Alain Girault, Olivier Beaumont, Vaidy Sunderam, Yves Robert, Luc Giraud, Amina Guermouche
Rapporteur / Rapporteuse : Olivier Beaumont, Vaidy Sunderam

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

Cette thèse s'intéresse à la résilience pour les applications haute performance à très grande échelle. Sur ce type de plateforme, qui compte jusqu'à plusieurs millions d'unités de calculs, les erreurs représentent la norme plutôt que l'exception. On distingue principalement deux types d'erreurs : les pannes (typiquement, l'arrêt de l'application suite au crash d'un nœud de calcul) et les corruptions de données silencieuses (se traduisant généralement par des résultats erronés). Ces dernières posent de nombreux problèmes car elles sont autant difficile à détecter qu'à corriger. Dans cette thèse, nous commençons par étudier plusieurs mécanismes de détection pour les erreurs silencieuses. Nous modélisons l'impact des détecteurs sur l'exécution d'applications scientifiques, permettant notamment de décider lequel utiliser lorsque plusieurs choix sont possibles. Dans un deuxième temps, nous combinons pannes et erreurs silencieuses au sein d'un même schéma de résilience : périodiquement, l'application vérifie les résultats, puis créer un point de sauvegarde. Ainsi, en cas d'erreur, il n'est pas nécessaire de tout ré-exécuter. L'objectif est alors de minimiser le temps d'exécution ou la consommation d’énergie. Dans ce contexte, nous étendons plusieurs résultats de la littérature en caractérisant le schéma de résilience optimal pour différents types d'applications. Nous fournissons également plusieurs algorithmes d'ordonnancement exacts polynomiaux, ainsi que des heuristiques pour les graphes de tâches. Enfin, les modèles sont validés au travers de nombreuses simulations, en comparant notamment les résultats obtenus avec l'état de l'art lorsque cela est possible.