Combining Checkpointing and Replication for Reliable Execution of Linear Workflows with Fail-Stop and Silent Errors
Combinaison des techniques de checkpoint et de réplication pour l'exécution efficace de chaînes de tâches avec erreurs fatales et silencieuses
Résumé
Large-scale platforms currently experience errors from two different sources,
namely fail-stop errors (which interrupt the execution) and silent errors (which strike
unnoticed and corrupt data). This work combines checkpointing and replication for the
reliable execution of linear workflows on platforms subject to these two error types. While
checkpointing and replication have been studied separately, their combination has not yet
been investigated despite its promising potential to minimize the execution time of linear
workflows in error-prone environments. Moreover, combined checkpointing and replication
has not yet been studied in the presence of both fail-stop and silent errors. The combination
raises new problems: for each task, we have to decide whether to checkpoint and/or
replicate it to ensure its reliable execution. We provide an optimal dynamic programming
algorithm of quadratic complexity to solve both problems. This dynamic programming
algorithm has been validated through extensive simulations that reveal the conditions in
which checkpointing only, replication only, or the combination of both techniques, lead to
improved performance.
Les plateformes à grande échelle subissent des erreurs de deux sources différentes, à savoir les erreurs fatales (qui interrompent l’exécution de l’application) et les erreurs silencieuses (qui ne sont pas détectées lorsqu’elles arrivent et corrompent les données). Ce rapport étudie la combinaison des techniques de checkpoint et de réplication pour l’exécution efficace et sûre de chaînes de tâches sur des plates-formes à grande échelle en présence d’erreurs fatales. Ces deux techniques ont été étudiées séparément mais leur combinaison ouvre de nouvelles perspectives pour la minimisation du temps d’exécution dans des environnements sujets aux fautes. De plus, la combinaison des checkpoints et de la réplication n’a jamais été étudiée avec la présence de fautes fatales et silencieuses à la fois. Pour chaque tâche, on doit décider s’il faut la checkpointer et /ou s’il faut la répliquer. Nous proposons un algorithme de programmation dynamique de complexité quadratique en le nombre de tâches pour résoudre le problème, et montrons expérimentalement, via un jeu complet de simulations, dans quelles conditions les deux techniques, prises séparément ou combinées, peuvent améliorer les performances.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...