Formal verification and empirical analysis of rollback relaxation1

https://doi.org/10.1016/S1383-7621(97)80167-1Get rights and content

Abstract

Time Warp is the most common mechanism used for implementing optimistically synchronized Parallel Discrete Event Simulation (PDES). Rollback relaxation is an optimization to Time Warp that reduces the space and time requirements of rollback. Rollback relaxation is applicable to simulation systems that contain memoryless components (i.e., components whose output at any instant of time is determined completely by its inputs at that time). For such components, a complete rollback is not necessary for the correct completion of simulation. Instead, on the receipt of a straggler message, a rollback relaxed processes merely aligns the input set to send new, and validate already sent, output messages. This optimization has been implemented and has experimentally proven to enhance the performance of Time Warp simulations. However, no formal proof of the correctness of rollback relaxation exists (although correctness proofs of Time Warp do). In this paper, we formally specify and verify the correctness of rollback relaxation. The problem is specified using the Prototype Verification System (PVS) Specification Language and proved using the PVS Prover.

References (22)

  • F. Mattern

    Efficient algorithms for distributed snapshots and global virtual time approximation

    Journal of Parallel and Distributed Computing

    (1993)
  • A.V. Aho et al.

    Compilers: Principles, Techniques, and Tools

    (1986)
  • K.M. Chandy et al.

    Space-time and simulation, Distributed Simulation

  • L.M. D'Souza et al.

    pGVT: An algorithm for accurate GVT estimation

  • R. Fujimoto

    Parallel discrete event simulation

    Communications of the ACM

    (1990)
  • A. Gafni

    Rollback mechanisms for optimistic distributed simulation systems, Distributed Simulation

  • J.V. Guttag et al.

    Larch: Languages and Tools for Formal Specification

    (1993)
  • C.A.R. Hoare

    Communicating Sequential Processes

    (1985)
  • ITD

    VHDL SSI Model Subset

    (July 1990)
  • D. Jefferson

    Virtual time

    ACM Transactions on Programming Languages and Systems

    (1985)
  • B. Kannikeswaran et al.

    Formal specification and verification of the pGVT algorithm

  • Cited by (4)

    • Analysis and simulation of mixed-technology VLSI systems

      2002, Journal of Parallel and Distributed Computing
    • An algorithm for fully-reversible optimistic parallel simulation

      2003, Winter Simulation Conference Proceedings
    • Efficient Optimistic Parallel Simulations Using Reverse Computation

      1999, ACM Transactions on Modeling and Computer Simulation
    • PVS: An experience report

      1999, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
    1

    Support for this work was provided in part by the Defense Advanced Research Projects Agency, contracts F33615-93-C-1315 and F33615-93-C-1316 monitored by Wright Laboratory and contract J-FBI-93-116 monitored by the Department of Justice.

    View full text