Efficient data structures for Time Warp simulation queues

https://doi.org/10.1016/S1383-7621(97)00060-XGet rights and content

Abstract

Optimistic simulation is besides the conservative methods the most promising approach to distributed discrete-event simulation (DDEVS). In the optimistic Time Warp strategy, every sub-simulator has to handle in addition to its main event queue (input queue) two other queues, holding information about sent messages and past states, respectively. We present efficient data structures and algorithms for the three queue types in Time Warp simulation. It shows that for two queue types the simple doubly linked list (DLL) approach suffices, for the input queue however, significant speed-up can be achieved by enhancing a data structure originally developed for sequential simulation. We show an improvement from an O(n) to an O(1) average case behavior for some operations by moving from the DLL to the new data structure without increasing the average case and worst case order of the other operations. Empirical results show that the new data structure yields substantial faster operation for enqueuing items into the list, which — regardless of the overhead introduced by the new data structure to the other queue operations — results in queue access acceleration for typical Time Warp simulations even for medium input queue sizes of about 100. For large queue sizes of about 10000 the new data structure yields more than 15 times faster overall queue operation performance.

References (26)

  • R. Brown

    Calendar queues: A fast O (1) priority queue implementation for the simulation event set problem

    Commun. ACM

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

    Distributed simulation: A case study in design and verification of distributed programs

    IEEE Trans. Software Engrg.

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

    Asynchronous distributed simulation via a sequence of parallel computations

    Commun. ACM

    (1981)
  • M. Ebling et al.

    An ant foraging model implemented on the Time Warp operating system

  • R.M. Fujimoto

    Time Warp on a shared memory multiprocessor

    Trans. Soc. Comput. Simul.

    (1989)
  • A. Gafni

    Rollback mechanisms for optimistic distributed simulation systems

  • D.R. Jefferson

    Virtual time

    ACM Trans. Program. Lang. Syst.

    (1985)
  • D.R. Jefferson et al.

    Fast concurrent simulation using the Time Warp mechanism

  • D.W. Jones

    An empirical comparison of priority-queue and event-set implementations

    Commun. ACM

    (1986)
  • J.H. Kingston

    Analysis of Algorithms for the Simulation Event List

  • M. Presley et al.

    Benchmarking the Time Warp operating system with a computer network simulation

  • P.L. Reiher

    Parallel simulation using the Time Warp operating system

  • Cited by (2)

    View full text