Scheduling algorithms and resilience patterns for fail-stop and silent errors - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2017

Scheduling algorithms and resilience patterns for fail-stop and silent errors

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

Résumé

This thesis focuses on resilience for high performance applications that execute on large scale platforms, with millions of processing cores. On such platforms, errors are the norm rather than the exception. We consider two types of errors: fail-stop errors, which generally cause the application to stop, and silent-errors, a.k.a. Silent Data Corruption or SDCs, which can corrupt data in memory. Silent errors pose a new threat to scientific applications, because they are both difficult to detect and to correct. In this thesis, we first study several detection mechanisms for silent errors. We model the impact of such detectors on the execution of scientific applications, which allows us to decide which one to use when multiple choices are available. Then, we combine both fail-stop errors and silent errors into one resilience pattern: the application periodically verify and checkpoint the results. Thus, in case of failure, it is not necessary to re-execute everything from scratch. The goal is to minimize the execution time or the energy consumption. In this context, we extend several results from the literature by deriving the optimal resilience pattern for different types of applications. We also provide several exact scheduling algorithms that execute in polynomial time, as well as heuristics for application workflows. Finally, models are validated through an exhaustive set of simulations, and by comparing against the state-of-the-art when possible.
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.
Fichier principal
Vignette du fichier
CAVELAN_Aurelien_2017LYSEN031_These.pdf (7.48 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)
Loading...

Dates et versions

tel-01582228 , version 1 (05-09-2017)

Identifiants

  • HAL Id : tel-01582228 , version 1

Citer

Aurélien Cavelan. Scheduling algorithms and resilience patterns for fail-stop and silent errors. Performance [cs.PF]. Université de Lyon, 2017. English. ⟨NNT : 2017LYSEN031⟩. ⟨tel-01582228⟩
443 Consultations
219 Téléchargements

Partager

Gmail Facebook X LinkedIn More