A Performance Comparison of Simulation Calendar Algorithms: An Empirical Approach

We propose a suite of tests based on two-state Markov chains for experimentally assessing the dynamic performance of a variety of simulation event calendar implementations. In contrast to previous studies based on the standard hold model for evaluation of performance statically, the proposed Markov hold model is more general and can be used to examine how different implementations respond dynamically to dependent sequences of insertion and deletion requests. The Markov hold model is used to conduct tests based on random, stressed, and correlated input sequences of requests, with performance measures including completion times, sensitivity to correlations, sensitivity to duplication, and efficiency of data-handling. We apply these tests to fourteen different simulation calendar implementations. To demonstrate the utility of the proposed model, we also include a comparison of the simulation calendar algorithms on a token ring protocol with bursty Markovian packet-traffic.

[1]  William M. McCormack,et al.  Analysis of future event set algorithms for discrete event simulation , 1981, CACM.

[2]  C. M. Reeves Complexity Analyses of Event Set Algorithms , 1984, Comput. J..

[3]  Russell Schechter,et al.  Introduction to Simulation and SLAM , 1979 .

[4]  Wojciech Szpankowski,et al.  Some Theorems on Instability with Applications to Multiaccess Protocols , 1988, Oper. Res..

[5]  O. J. Dahl,et al.  Simula Begin , 1979 .

[6]  Douglas W. Jones,et al.  An empirical comparison of priority-queue and event-set implementations , 1986, CACM.

[7]  Kristen Nygaard,et al.  The development of the SIMULA languages , 1978, SIGP.

[8]  William Pugh,et al.  Skip Lists: A Probabilistic Alternative to Balanced Trees , 1989, WADS.

[9]  Donald B. Johnson,et al.  Priority Queues with Update and Finding Minimum Spanning Trees , 1975, Inf. Process. Lett..

[10]  S. L. Graham,et al.  A Data Structure for Manipulating Priority Queues , 1978 .

[11]  Kurt Maly,et al.  A comparison of heaps and the TL structure for the simulation event set , 1978, CACM.

[12]  Y. F. Lam,et al.  An Improved Algorithm for Performance Analysis of Networks with Unreliable Components , 1986, IEEE Trans. Commun..

[13]  Randy Brown,et al.  Calendar queues: a fast 0(1) priority queue implementation for the simulation event set problem , 1988, CACM.

[14]  William L. Maxwell,et al.  Analysis of the Time Indexed List Procedure for Synchronization of Discrete Event Simulations , 1978 .

[15]  Jeffrey H. Kingston Analysis of Henriksen's Algorithm for the Simulation Event Set , 1986, SIAM J. Comput..

[16]  Clark A. Crane,et al.  Linear Lists and Prorty Queues as Balanced Binary Trees , 1972, Outstanding Dissertations in the Computer Sciences.

[17]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.

[18]  Don T. Phillips,et al.  A two-list synchronization procedure for discrete event simulation , 1981, CACM.

[19]  H. Sol Simula Begin - G.M. Birtwistle, O-J. Dahl, B. Myhrhaug and K. Nygaard , 1978 .

[20]  William M. McCormack,et al.  COMPARISON OF FUTURE EVENT SET ALGORITHMS FOR SIMULATIONS OF CLOSED QUEUEING SYSTEMS , 1979 .

[21]  Jean Vuillemin,et al.  Description and analysis of an efficient priority queue representation , 1978, 19th Annual Symposium on Foundations of Computer Science (sfcs 1978).

[22]  Lionel M. Ni,et al.  Analytic Models of Cyclic Service Systems and Their Application to Token-Passing Local Networks , 1988, IEEE Trans. Computers.

[23]  Vernon Rego,et al.  EcliPse: A system for high performance concurrent simulation , 1991, Softw. Pract. Exp..

[24]  Donald E. Knuth,et al.  A Trivial Algorithm Whose Analysis Isn't , 1978, J. Comput. Syst. Sci..

[25]  Robert E. Tarjan,et al.  Self-Adjusting Heaps , 1986, SIAM J. Comput..

[26]  Jean G. Vaucher,et al.  A comparison of simulation event list algorithms , 1975, Commun. ACM.

[27]  William L. Maxwell,et al.  Some Problems of Digital Systems Simulation , 1959 .

[28]  John T. Stasko,et al.  Pairing heaps: experiments and analysis , 1987, CACM.

[29]  Stephan Olariu,et al.  Optimal Parallel Initialization Algorithms for a Class of Priority Queues , 1991, IEEE Trans. Parallel Distributed Syst..

[30]  Jean Vuillemin,et al.  A data structure for manipulating priority queues , 1978, CACM.

[31]  Alan J. Mayne,et al.  Introduction to Simulation and SLAM , 1979 .

[32]  Jean G. Vaucher On the Distribution of Event Times for the notices in a Simulation Event List , 1977 .

[33]  Krzysztof Pawlikowski,et al.  Telecommunications: Protocols and Design , 1991 .

[34]  Robert E. Tarjan,et al.  Self-adjusting binary trees , 1983, STOC.

[35]  Gaston H. Gonnet,et al.  Heaps applied to event driven mechanisms , 1976, CACM.