This Article 
 Bibliographic References 
 Add to: 
On Rolling Back and Checkpointing in Time Warp
November 2001 (vol. 12 no. 11)
pp. 1105-1121

Abstract—In this paper, we present a family of three algorithms which serve to perform checkpoints and to roll back Time Warp. These algorithms are primarily intended for use in simulations in which there are a large number of LPs and in which events have a small computational granularity. Important representatives of this class are VLSI and computer network simulations. In each of our algorithms, LPs are gathered into clusters via algorithms which are application dependent. In order to examine the performance of our algorithms and to compare them to Time Warp, we made use of two of the largest digital logic circuits available from the ISCAS89 benchmark series of combinational circuits. The execution time, number of states saved, and maximal memory consumption were compared to the same quantities for Time Warp. Our results indicated that each of the algorithms occupies a different point in the spectrum of possible trade-offs between memory usage and execution time, ranging from substantial memory savings (at a comparable cost in speed) to memory savings and a comparable speed to Time Warp. Hence, an important benefit of our algorithms is the ability to trade off memory requirements with execution time.

[1] H. Avril and C. Tropper, “Clustered Time Warp and Logic Simulation,” Proc. Ninth Workshop Parallel and Distributed Simulation, pp. 112-119, 1995.
[2] H. Avril, “Clustered Time Warp and Logic Simulation,” PhD dissertation, School of Computer Science, McGill Univ., Montreal, Canada, 1996.
[3] H. Avril and C. Tropper, “Dynamic Load Balancing of Clustered Time Warp,” Proc. 10th Workshop Parallel and Distributed Simulation, 1996.
[4] M.L. Bailey, J.V. Briner, and R.D. Chamberlain, “Parallel Logic Simulation of VLSI Systems,” ACM Computing Surveys, vol. 26, no. 3, pp. 255-295, Sept. 1994.
[5] H. Bauer, C. Sporrer, and T.H. Krodel, “On Distributed Logic Simulation Using Time Warp,” Proc. Int'l Conf. Very Large Scale Integration (VLSI), C. Halas and G. Denyer, eds., pp. 127-136, Aug. 1991.
[6] A. Boukerche and C. Tropper, “Parallel Simulation on the Hypercube Multiprocessor,” Distributed Computing, vol. 8, pp. 181-190, 1995.
[7] J.V. Briner Jr., “Parallel Mixed-Level Simulation of Digital Circuits Using Virtual Time,” PhD thesis, Duke Univ., 1990.
[8] J.V. Briner Jr., “Fast Parallel Simulation of Digital Systems,” Proc. Fifth Workshop Parallel and Distributed Simulation, pp. 71-77, 1991.
[9] K. Chandy and J. Misra, “Distributed Simulation: A Case Study in the Design and Verification of Distriuted Programs,” IEEE Trans. Software Eng., vol. 5, pp. 440-452, Sept. 1979.
[10] M. Choe and C. Tropper, “On Learning Algorithms and Balancing Loads in Time Warp,” Proc. 13th Workshop Parallel and Distributed Simulation, pp. 101-109, May 1999.
[11] S. Das et al., “GTW: A Time Warp System for Shared Memory Multiprocessors,” Proc. 1994 Winter Simulation Conf., 1994.
[12] J. Fleischmann and P.A. Wilsey, “Comparative Analysis of Periodic State Saving Techniques in TimeWarp Simulators,” Proc. Ninth Workshop Parallel and Distributed Simulation (PADS '95), pp. 50-58, June 1995.
[13] R.M. Fujimoto, ”Time Warp on a Shared Memory Multiprocessor,” Trans. Soc. Computer Simulation, vol. 6, no. 3, pp. 211-239, July 1989.
[14] R. Fujimoto, “Parallel Discrete Event Simulation,” Comm. ACM, vol. 33, no. 10, pp. 30-53, Oct. 1990.
[15] A. Gafni, ”Rollback Mechanisms for Optimistic Distributed Simulation Systems,” Proc. Second Workshop Parallel and Distributed Systems, pp. 61-67, 1988.
[16] B. Groselj and C. Tropper, “The Distributed Simulation of Clustered Processes,” Distributed Computing, vol. 4, pp. 111-121, 1991.
[17] D.R. Jefferson, "Virtual Time," ACM Trans. Programming Languages and Systems, vol. 7, no. 3, pp. 404-425, July 1985.
[18] K. El-Khatib and C. Tropper, “Load Balancing for Clustered Time Warp,” Proc. Symp. Modeling Ananlysis and Simulation of Computer and Telecomm. '97, 1997.
[19] Y.-B. Lin and E.D. Lazowska, “Processor Scheduling for Time Warp Parallel Simulation,” Proc. 1991 Soc. Computer Simulation Multiconf. Advances in Parallel and Distributed Simulations, pp. 11-14, Jan. 1991.
[20] B. Lubachevsky, A. Schwartz, and A. Weiss, “Rollback Sometimes Works ... If Filtered,” Proc. 1989 Winter Simulation Conf., pp. 630-639, Dec. 1989.
[21] D. Nicol and R. Fujimoto, ”Parallel Simulation Today,” Annals Operations Research, vol. 53, pp. 249-285, Nov. 1994.
[22] K. Panesar and R. Fujimoto, ”Adaptive Flow Control in Time Warp,” Proc. 11th Workshop Parallel and Distributed Simulation, pp. 108-116, June 1997.
[23] B.R. Preiss, “The Yaddes Distributed Discrete Event Simulation Specification Language and Execution Environment,” Proc. Multiconf. Distributed Simulation, pp. 139-144, 1989.
[24] B.R. Preiss, W. Loucks, and I. MacIntyre, “Effects of the Checkpoint Interval on Time and Space in Time Warp,” ACM Trans. Modeling and Computer Simulation, July 1994.
[25] M. Presley, M. Ebling, F. Wieland, and D. Jefferson, “Benchmarking the Time Warp Operating System with a Computer Network Simulation,” Proc. Third Workshop Parallel and Distributed Simulation, pp. 24-36, 1989.
[26] M. Presley, M. Ebling, F. Wieland, and D. Jefferson, “Virtual Time Based Dynamic Load Management in the Time Warp Operating System,” Proc. Fourth Workshop Parallel and Distributed Simulation, pp. 103-111, 1990.
[27] F. Wieland et al., “Distributed Combat Simulation and Time Warp: The Model and Its Performance,” Proc. Soc. Computer Simulation Multic. Distributed Simulation, vol. 21, no. 2, pp. 14-21, Mar. 1989.

Index Terms:
Parallel simulation, distributed simulation, distributed processing.
Hervé Avril, Carl Tropper, "On Rolling Back and Checkpointing in Time Warp," IEEE Transactions on Parallel and Distributed Systems, vol. 12, no. 11, pp. 1105-1121, Nov. 2001, doi:10.1109/71.969122
Usage of this product signifies your acceptance of the Terms of Use.