Abstract
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.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Fujimoto, R.M.: Parallel discrete event simulation. Commun. ACM - Spec. Issue Simul. 33(10), 30–53 (1990)
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)
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)
(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)
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)
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)
Jefferson, D.R.: Virtual time. ACM Trans. Program. Lang. Syst. 7, 404–425 (1985)
Sokol, L., Briscoe, D., Wieland, A.: MTW: a strategy for scheduling discrete simulation events for concurrent execution. In: Proceedings of Distributed Simulation Conference (1988)
Steinman, J.S.: Breathing time warp. In: PADS 1993 Proceedings of the Seventh Workshop on Parallel and Distributed Simulation. ACM, New York (1993)
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)
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)
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). https://doi.org/10.1007/978-3-642-55224-3_29
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). https://doi.org/10.1007/978-3-642-55224-3_33
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)
The history of Reverse Computation as applied to Parallel Discrete Event Simulation, in Wikipedia. https://en.wikipedia.org/wiki/Reverse_computation
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Maśko, Ł., Tudruj, M. (2018). Global State Monitoring in Optimization of Parallel Event–Driven Simulation. In: Wyrzykowski, R., Dongarra, J., Deelman, E., Karczewski, K. (eds) Parallel Processing and Applied Mathematics. PPAM 2017. Lecture Notes in Computer Science(), vol 10777. Springer, Cham. https://doi.org/10.1007/978-3-319-78024-5_42
Download citation
DOI: https://doi.org/10.1007/978-3-319-78024-5_42
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-78023-8
Online ISBN: 978-3-319-78024-5
eBook Packages: Computer ScienceComputer Science (R0)