DyMeLoR: Dynamic Memory Logger and Restorer Library for Optimistic Simulation Objects with Generic Memory Layout

In this article we focus on checkpoint/restore facilities for optimistic simulation objects with generic memory layout. Specifically, we present the design and implementation of a C library, named DyMeLoR (Dynamic Memory Logger and Restorer), that, beyond offering traditional services for dynamic memory allocation/release, additionally supports transparent checkpoint/restore of scattered simulation objects' states. DyMeLoR is well suited for being integrated within optimistic simulation platforms relying on kernel processes, each managing one or more simulation objects, as typical in most implementations of general purpose optimistic simulation platforms. From the point of view of efficiency, DyMeLoR has been designed in order to minimize memory consumption for meta-data describing the current layout of the simulation object's state, and to provide good trade-offs between the cost of meta-data manipulation and the cost of memory-to-memory data copies associated with checkpoint/restore tasks. Also, the library exhibits Piece-Wise-Deterministic (PWD) behavior, thus allowing the employment of (optimized) sparse checkpointing strategies each time the overlying application software complies with the PWD assumption. We also report the results of an experimental study where DyMeLoR is integrated within the ROme OpTimistic Simulator (ROOT-Sim), and is used to support optimistic simulation of a cellular system.

[1]  Stephen P. Boyd,et al.  Optimal power control in interference-limited fading wireless channels with outage-probability specifications , 2002, IEEE Trans. Wirel. Commun..

[2]  Rassul Ayani,et al.  Adaptive checkpointing in Time Warp , 1994, PADS '94.

[3]  Richard M. Fujimoto,et al.  GTW: a time warp system for shared memory multiprocessors , 1994, Proceedings of Winter Simulation Conference.

[4]  Francesco Quaglia A Cost Model for Selecting Checkpoint Positions in Time Warp Parallel Simulation , 2001, IEEE Trans. Parallel Distributed Syst..

[5]  Augmenting the CAVE: An Initial Study into Close Focused, Inward Looking, Exploration in IPT Systems , 2007, 11th IEEE International Symposium on Distributed Simulation and Real-Time Applications (DS-RT'07).

[6]  Sajal K. Das,et al.  Exploiting model independence for parallel PCS network simulation , 1999, Proceedings Thirteenth Workshop on Parallel and Distributed Simulation. PADS 99. (Cat. No.PR00155).

[7]  Darrin West,et al.  Automatic incremental state saving , 1996, Workshop on Parallel and Distributed Simulation.

[8]  Xiaojun Shen,et al.  Design and Implementation of Haptic Tele-mentoring over the Internet , 2007 .

[9]  Jeff S. Steinman Incremental state saving in SPEEDES using C++ , 1993, WSC '93.

[10]  David W. Bauer,et al.  An Approach for Incorporating Rollback through Perfectly Reversible Computation in a Stream Simulator , 2007, 21st International Workshop on Principles of Advanced and Distributed Simulation (PADS'07).

[11]  Francesco Quaglia,et al.  Transparent State Management for Optimistic Synchronization in the High Level Architecture , 2005, Workshop on Principles of Advanced and Distributed Simulation (PADS'05).

[12]  Johan Montagnat,et al.  Transparent incremental state saving in time warp parallel discrete event simulation , 1996, Workshop on Parallel and Distributed Simulation.

[13]  Francesco Quaglia,et al.  A version of MASM portable across different UNIX systems and different hardware architectures , 2005, Ninth IEEE International Symposium on Distributed Simulation and Real-Time Applications.

[14]  Francesco Quaglia,et al.  Nonblocking Checkpointing for Optimistic Parallel Simulation: Description and an Implementation , 2003, IEEE Trans. Parallel Distributed Syst..

[15]  Wayne M. Loucks,et al.  Effects of the checkpoint interval on time and space in time warp , 1994, TOMC.

[16]  Robert Rönngren,et al.  Event sensitive state saving in time warp parallel discrete event simulations , 1996, WSC.

[17]  Philip A. Wilsey,et al.  WARPED: a time warp simulation kernel for analysis and application development , 1996, Proceedings of HICSS-29: 29th Hawaii International Conference on System Sciences.

[18]  David R. Jefferson,et al.  Virtual time , 1985, ICPP.

[19]  Christopher D. Carothers,et al.  Efficient optimistic parallel simulations using reverse computation , 1999, Workshop on Parallel and Distributed Simulation.

[20]  Jeff S. Steinman,et al.  Incremental State Saving in Speedes Using C++ , 1993, Proceedings of 1993 Winter Simulation Conference - (WSC '93).

[21]  Kalyan S. Perumalla,et al.  /spl mu/sik - a micro-kernel for parallel/distributed simulation systems , 2005, Workshop on Principles of Advanced and Distributed Simulation (PADS'05).

[22]  Philip A. Wilsey,et al.  Comparative analysis of periodic state saving techniques in time warp simulators , 1995, PADS.

[23]  Richard M. Fujimoto,et al.  Using Reversible Computation Techniques in a Parallel Optimistic Simulation of a Multi-Processor Computing System , 2007, 21st International Workshop on Principles of Advanced and Distributed Simulation (PADS'07).