Global State Monitoring in Optimization of Parallel Event–Driven Simulation

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10777)


The paper presents results of experimental work in the field of optimization of parallel, event-driven simulation via application of global state monitoring. Discrete event simulation is a well known technique used for modelling and simulating complex parallel systems. Parallel simulation employs multiple simulated event queues processed in parallel. Absence of proper synchronization between parallel queues can cause massive simulation rollbacks, which slow down the simulation process. We propose a new method for parallel simulation control with monitoring of global program states, which prevent excessive number of rollbacks. Every queue process reports its local progress to a global synchronizer which monitors the global simulation state as timestamps of recently processed events in distributed queues. Based on this state the synchronizer checks the progress of simulation and sends signals limiting progress in too advanced queues. This control is done asynchronously, and thus it has small time overheads in case of correct simulation order. The paper describes the proposed approach and the experimental results of its basic program implementation.


Parallel event-driven simulation Global application states monitoring Optimistic PDES simulation 


  1. 1.
    Fujimoto, R.M.: Parallel discrete event simulation. Commun. ACM - Spec. Issue Simul. 33(10), 30–53 (1990)Google Scholar
  2. 2.
    Fujimoto, R.M.: Performance of time warp under synthetic workloads. In: Proceedings of the SCS Multiconference on Distributed Simulation. SCS Simulation Series, vol. 22, pp. 23–28 (1990)Google Scholar
  3. 3.
    Ferscha, A., Tripathi, S.K.: Parallel and distributed simulation of discrete event systems. Technical report, UM Computer Science Department, CS-TR-3336, UMIACS, UMIACS-TR-94-100 (1998)Google Scholar
  4. 4.
    (Mootaz) Elnozahy, E.N., Alvisi, L., Wang, Y.-M., Johnson, D.B.: A survey of rollback-recovery protocols in message-passing systems. ACM Comput. Surv. 34(3), 375–408 (2002)CrossRefGoogle Scholar
  5. 5.
    Lv, H., Cheng, Y., Bai, L., Chen, M., Fan, D., Sun, N.: P-GAS: parallelizing a cycle-accurate event-driven many-core processor simulator using parallel discrete event simulation. In: PADS 2010, Proceedings of the 2010 IEEE Workshop on Principles of Advanced and Distributed Simulation, pp. 89–96. IEEE Computer Society, Washington, D.C. (2010)Google Scholar
  6. 6.
    Chandry, K.M., Misra, J.: Distributed simulation: a case study in design and verification of distributed programs. IEEE Trans. Software Eng. 5(5), 440–452 (1979)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Jefferson, D.R.: Virtual time. ACM Trans. Program. Lang. Syst. 7, 404–425 (1985)CrossRefGoogle Scholar
  8. 8.
    Sokol, L., Briscoe, D., Wieland, A.: MTW: a strategy for scheduling discrete simulation events for concurrent execution. In: Proceedings of Distributed Simulation Conference (1988)Google Scholar
  9. 9.
    Steinman, J.S.: Breathing time warp. In: PADS 1993 Proceedings of the Seventh Workshop on Parallel and Distributed Simulation. ACM, New York (1993)Google Scholar
  10. 10.
    Wang, J., Jagtap, D., Abu-Ghazaleh, N., Ponomarev, D.: Parallel discrete event simulation for multi-core systems: analysis and optimization. IEEE Trans. Parallel Distrib. Syst. 25(6), 1574–1584 (2014)CrossRefGoogle Scholar
  11. 11.
    Tudruj, M., Borkowski, J., Maśko, Ł., Smyk, A., Kopanski, D., Laskowski, E.: Program design environment for multicore processor systems with program execution controlled by global states monitoring. In: ISPDC 2011, July 2011, Cluj-Napoca, Proceedings, pp. 102–109. IEEE CS (2011)Google Scholar
  12. 12.
    Kopański, D., Maśko, Ł., Laskowski, E., Smyk, A., Borkowski, J., Tudruj, M.: Distributed program execution control based on application global states monitoring in PEGASUS DA framework. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Waśniewski, J. (eds.) PPAM 2013. LNCS, vol. 8384, pp. 302–314. Springer, Heidelberg (2014). CrossRefGoogle Scholar
  13. 13.
    Maśko, Ł., Tudruj, M.: Parallel event–driven simulation based on application global state monitoring. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Waśniewski, J. (eds.) PPAM 2013. LNCS, vol. 8384, pp. 348–357. Springer, Heidelberg (2014). CrossRefGoogle Scholar
  14. 14.
    Tudruj, M., Borkowski, J., Kopanski, D., Laskowski, E., Masko, L., Smyk, A.: PEGASUS DA framework for distributed program execution control based on application global states monitoring. Concurr. Comput.: Pract. Exp. 27(4), 1027–1053 (2015)CrossRefGoogle Scholar
  15. 15.
    The history of Reverse Computation as applied to Parallel Discrete Event Simulation, in Wikipedia.

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Institute of Computer Science of the Polish Academy of SciencesWarsawPoland
  2. 2.Polish–Japanese Academy of Information TechnologyWarsawPoland

Personalised recommendations