Issue No. 12 - December (1998 vol. 9)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/71.737697
<p><b>Abstract</b>—Coordinated checkpointing simplifies failure recovery and eliminates domino effects in case of failures by preserving a consistent global checkpoint on stable storage. However, the approach suffers from high overhead associated with the checkpointing process. Two approaches are used to reduce the overhead: First is to minimize the number of synchronization messages and the number of checkpoints, the other is to make the checkpointing process nonblocking. These two approaches were orthogonal in previous years until the Prakash-Singhal algorithm [<ref rid="bibl121318" type="bib">18</ref>] combined them. In other words, the Prakash-Singhal algorithm forces only a minimum number of processes to take checkpoints and it does not block the underlying computation. However, we found two problems in this algorithm. In this paper, we identify these problems and prove a more general result: There does not exist a nonblocking algorithm that forces only a minimum number of processes to take their checkpoints. Based on this general result, we propose an efficient algorithm that neither forces all processes to take checkpoints nor blocks the underlying computation during checkpointing. Also, we point out future research directions in designing coordinated checkpointing algorithms for distributed computing systems.</p>
Distributed system, coordinated checkpointing, causal dependence, nonblocking, consistent checkpoints.
G. Cao and M. Singhal, "On Coordinated Checkpointing in Distributed Systems," in IEEE Transactions on Parallel & Distributed Systems, vol. 9, no. , pp. 1213-1225, 1998.