TY - GEN
T1 - Scalable replay with partial-order dependencies for message-logging fault tolerance
AU - Lifflander, Jonathan
AU - Meneses, Esteban
AU - Menon, Harshitha
AU - Miller, Phil
AU - Krishnamoorthy, Sriram
AU - Kale, Laxmikant V.
N1 - Publisher Copyright:
© 2014 IEEE.
PY - 2014/11/26
Y1 - 2014/11/26
N2 - Deterministic replay of a parallel application is commonly used for discovering bugs or to recover from a hard fault with message-logging fault tolerance. For message passing programs, a major source of overhead during forward execution is recording the order in which messages are sent and received. During replay, this ordering must be used to deterministically reproduce the execution. Previous work in replay algorithms often makes minimal assumptions about the programming model and application to maintain generality. However, in many applications, only a partial order must be recorded due to determinism intrinsic in the program, ordering constraints imposed by the execution model, and events that are commutative (their relative execution order during replay does not need to be reproduced exactly). In this paper, we present a novel algebraic framework for reasoning about the minimum dependencies required to represent the partial order for different orderings and interleavings. By exploiting this framework, we improve on an existing scalable message-logging fault tolerance scheme that uses a total order. The improved scheme scales to 131,072 cores on an IBM BlueGene/P with up to 2× lower overhead.
AB - Deterministic replay of a parallel application is commonly used for discovering bugs or to recover from a hard fault with message-logging fault tolerance. For message passing programs, a major source of overhead during forward execution is recording the order in which messages are sent and received. During replay, this ordering must be used to deterministically reproduce the execution. Previous work in replay algorithms often makes minimal assumptions about the programming model and application to maintain generality. However, in many applications, only a partial order must be recorded due to determinism intrinsic in the program, ordering constraints imposed by the execution model, and events that are commutative (their relative execution order during replay does not need to be reproduced exactly). In this paper, we present a novel algebraic framework for reasoning about the minimum dependencies required to represent the partial order for different orderings and interleavings. By exploiting this framework, we improve on an existing scalable message-logging fault tolerance scheme that uses a total order. The improved scheme scales to 131,072 cores on an IBM BlueGene/P with up to 2× lower overhead.
KW - determinism
KW - execution model
KW - fault tolerance
KW - message logging
KW - partial-order dependencies
KW - replay
UR - http://www.scopus.com/inward/record.url?scp=84917680515&partnerID=8YFLogxK
U2 - 10.1109/CLUSTER.2014.6968739
DO - 10.1109/CLUSTER.2014.6968739
M3 - Contribución a la conferencia
AN - SCOPUS:84917680515
T3 - 2014 IEEE International Conference on Cluster Computing, CLUSTER 2014
SP - 19
EP - 28
BT - 2014 IEEE International Conference on Cluster Computing, CLUSTER 2014
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 16th IEEE International Conference on Cluster Computing, CLUSTER 2014
Y2 - 22 September 2014 through 26 September 2014
ER -