ABSTRACT
Parallel discrete-event simulation (PDES) is a well-established family of methods to accelerate discrete-event simulations. However, the available algorithms vary substantially in the performance achievable for different models, largely preventing generic solutions applicable by modellers without expert knowledge. For instance, in Time Warp, the processing elements execute events asynchronously and speculatively with high aggressiveness, leading to frequent and costly rollbacks if misspeculations occur often. In contrast, synchronous approaches such as the new Window Racer algorithm exhibit a more cautious form of speculation. In the present paper, we combine these two fundamentally different algorithms within a single runtime environment, allowing for a choice of the best algorithm for different model segments. We describe the architecture and the algorithmic considerations to support the efficient coexistence and interaction of the algorithms without violating the correctness of the simulation. Our experiments using a synthetic benchmark and an epidemics model show that the hybrid algorithm is less sensitive to its configuration and can deliver substantially higher performance in models with varying degrees of coupling among entities compared to each algorithm on its own.
- Philipp Andelfinger, Till Köster, and Adelinde Uhrmacher. 2023. Zero Lookahead? Zero Problem. The Window Racer Algorithm. In Proceedings of the 2023 SIGSIM Conference on Principles of Advanced Discrete Simulation(SIGSIM-PADS ’23). ACM, New York, NY, USA, 12 pages.Google ScholarDigital Library
- Philipp Andelfinger, Andrea Piccione, Alessandro Pellegrini, and Adelinde Uhrmacher. 2022. Comparing Speculative Synchronization Algorithms for Continuous-Time Agent-Based Simulations. In Proceedings of the 26th International Symposium on Distributed Simulation and Real Time Applications(DS-RT ’22). IEEE, Piscataway, NJ, USA, 57–66. https://doi.org/10.1109/DS-RT55542.2022.9932067Google ScholarCross Ref
- Duane Ball and Susan Hoyt. 1990. The Adaptive Time-Warp Concurrency Control Algorithm. In Distributed Simulation(PADS ’90), David Nicol (Ed.). Society for Computer Simulation, San Diego, CA, USA, 174–177.Google Scholar
- Christopher D Carothers and Kalyan S Perumalla. 2010. On Deciding Between Conservative and Optimistic Approaches on Massively Parallel Platforms. In Proceedings of the 2010 Winter Simulation Conference, Björn Johansson, Sanjay Jain, and Jairo Montoya-Torres (Eds.). IEEE, Piscataway, NJ, USA, 678–687. https://doi.org/10.1109/WSC.2010.5679119Google ScholarCross Ref
- Christopher D Carothers, Kalyan S Perumalla, and Richard M Fujimoto. 1999. Efficient Optimistic Parallel Simulations Using Reverse Computation. ACM Transactions on Modeling and Computer Simulation 9, 3 (July 1999), 224–253. https://doi.org/10.1145/347823.347828Google ScholarDigital Library
- Kanianthra Mani Chandy and Jaydev Misra. 1979. Distributed Simulation: A Case Study in Design and Verification of Distributed Programs. IEEE Transactions on Software Engineering SE-5, 5 (Sept. 1979), 440–452. https://doi.org/10.1109/tse.1979.230182Google ScholarDigital Library
- Davide Cingolani, Alessandro Pellegrini, and Francesco Quaglia. 2017. Transparently Mixing Undo Logs and Software Reversibility for State Recovery in Optimistic PDES. ACM Transactions on Modeling and Computer Simulation 27, 2 (May 2017), 1–26. https://doi.org/10.1145/3077583Google ScholarDigital Library
- Vittorio Cortellessa and Francesco Quaglia. 2000. Aggressiveness/Risk Effects Based Scheduling in Time Warp. In Proceedings of the 2000 Winter Simulation Conference, Jeffrey A Joines, Russel R Barton, Keebom Kang, and Paul A Fishwick (Eds.). IEEE, Piascatawy, NJ, USA, 409–417. https://doi.org/10.1109/WSC.2000.899746Google ScholarCross Ref
- Samir Das, Richard M Fujimoto, Kiran Panesar, Don Allison, and Maria Hybinette. 1994. GTW: A Time Warp System for Shared Memory Multiprocessors. In Proceedings of the 1994 Winter Simulation Conference, Jeffrey D Tew, Mani S Manivannan, Deborah A Sadowski, and Andrew F Seila (Eds.). Society for Computer Simulation International, San Diego, CA, USA, 1332–1339. https://doi.org/10.1109/WSC.1994.717527Google ScholarCross Ref
- Phillip M Dickens and Paul F Reynolds, Jr. 1990. SRADS with Local Rollback. In Distributed Simulation(PADS ’90), David Nicol (Ed.). Society for Computer Simulation, San Diego, CA, USA, 161–164.Google Scholar
- Josef Fleischmann and Philip A Wilsey. 1995. Comparative Analysis of Periodic State Saving Techniques in Time Warp Simulators. In Proceedings of the 9th Workshop on Parallel and Distributed Simulation(PADS ’95). IEEE Computer Society, Piscataway, NJ, USA, 50–58. https://doi.org/10.1145/214282.214298Google ScholarDigital Library
- Richard M Fujimoto. 1990. Parallel Discrete Event Simulation. Commun. ACM 33, 10 (Oct. 1990), 30–53. https://doi.org/10.1145/84537.84545Google ScholarDigital Library
- Richard M Fujimoto. 1990. Performance of Time Warp Under Synthetic Workloads. In Distributed Simulation(PADS ’90), David Nicol (Ed.). Society for Computer Simulation International, San Diego, CA, USA, 23–28.Google Scholar
- Richard M Fujimoto. 1999. Exploiting Temporal Uncertainty in Parallel and Distributed Simulations. In Proceedings of the 13th Workshop on Parallel and Distributed Simulation(PADS ’99). IEEE Computer Society, Washington, DC, USA, 46–53. https://doi.org/10.1109/PADS.1999.766160Google ScholarCross Ref
- Richard M Fujimoto, Rajive Bagrodia, Randal E Bryant, K Mani Chandy, David Jefferson, Jayadev Misra, David Nicol, and Brian Unger. 2017. Parallel Discrete Event Simulation: The Making of a Field. In Proceedings of the 2017 Winter Simulation Conference, Victor W K Chan, Andrea D’Ambrogio, Gregory Zacharewicz, Navonil Mustafee, Gabriel Wainer, and Ernest Page (Eds.). IEEE, Piscataway, NJ, USA, 262–291. https://doi.org/10.1109/WSC.2017.8247793Google ScholarCross Ref
- Richard M Fujimoto and Maria Hybinette. 1997. Computing Global Virtual Time in Shared-Memory Multiprocessors. ACM Transactions on Modeling and Computer Simulation 7 (1997), 425–446. https://doi.org/10.1145/268403.268404Google ScholarDigital Library
- David W Glazer and Carl Tropper. 1993. On Process Migration and Load Balancing in Time Warp. IEEE Transactions on Parallel and Distributed Systems 4, 3 (March 1993), 318–327.Google ScholarDigital Library
- Gerrit Großmann, Michael Backenköhler, and Verena Wolf. 2020. Importance of Interaction Structure and Stochasticity for Epidemic Spreading: A COVID-19 Case Study. In Quantitative Evaluation of Systems, Marco Gribaudo, David N Jansen, and Anne Remke (Eds.). Lecture Notes in Computer Science, Vol. 12289. Springer International Publishing, Cham, Switzerland, 211–229. https://doi.org/10.1007/978-3-030-59854-9_16Google ScholarDigital Library
- Mauro Ianni, Romolo Marotta, Davide Cingolani, Alessandro Pellegrini, and Francesco Quaglia. 2018. The Ultimate Share-Everything PDES System. In Proceedings of the 2018 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation(SIGSIM-PADS ’18). ACM, New York, NY, USA, 73–84. https://doi.org/10.1145/3200921.3200931Google ScholarDigital Library
- David R Jefferson. 1985. Virtual Time. ACM Transactions on Programming Languages and Systems 7, 3 (July 1985), 404–425. https://doi.org/10.1145/3916.3988Google ScholarDigital Library
- David R Jefferson. 1990. Virtual time II: Storage Management in Conservative and Optimistic Systems. In Proceedings of the 9th Symposium on Principles of Distributed Computing(PODC ’90). ACM, New York, NY, USA, 75–89. https://doi.org/10.1145/93385.93403Google ScholarDigital Library
- David R Jefferson and Peter D Barnes. 2022. Virtual Time III, Part 1: Unified Virtual Time Synchronization for Parallel Discrete Event Simulation. ACM Transactions on Modeling and Computer Simulation 32, 4 (Sept. 2022), 1–29. https://doi.org/10.1145/3505248Google ScholarDigital Library
- Yi-Bing Lin and Edward D Lazowska. 1991. Processor Scheduling for Time Warp Parallel Simulation. In Advances in Parallel and Distributed Simulation(PADS ’91), David Nicol, Richard M Fujimoto, and Vijay Madisetti (Eds.). Society for Computer Simulation, San Diego, CA, USA, 11–14.Google Scholar
- Boris D Lubachevsky. 1989. Efficient Distributed Event-Driven Simulations of Multiple-loop Networks. Commun. ACM 32, 1 (Jan. 1989), 111–123. https://doi.org/10.1145/63238.63247Google ScholarDigital Library
- Charles M Macal. 2010. To Agent-based Simulation from System Dynamics. In Proceedings of the 2010 Winter Simulation Conference, Björn Johansson, Sanjay Jain, and Jairo Montoya-Torres (Eds.). IEEE, Piscataway, NJ, USA, 371–382. https://doi.org/10.1109/WSC.2010.5679148Google ScholarCross Ref
- Yukinori Matsumoto and Kazuo Taki. 1992. Adaptive Time-Ceiling for Efficient Parallel Discrete Event Simulation. Technical Report TR-0798. Institute for New Generation Computer Technology.Google Scholar
- Friedemann Mattern. 1993. Efficient Algorithms for Distributed Snapshots and Global Virtual Time Approximation. J. Parallel and Distrib. Comput. 18 (1993), 423–434. https://doi.org/10.1006/jpdc.1993.1075Google ScholarDigital Library
- Horst Mehl. 1991. Speed-up of Conservative Distributed Discrete Event Simulation Methods by Speculative Computing. In Proceedings of the Multiconference on Advances in Paralleland Distributed Simulation(PADS ’91), Vijay Krishna Madisetti, David Nicol, and Richard M Fujimoto (Eds.). Society for Computer Simulation, San Diego, CA, USA, 163–166.Google Scholar
- David M Nicol. 1993. The Cost of Conservative Synchronization in Parallel Discrete Event Simulations. J. ACM 40, 2 (April 1993), 304–333. https://doi.org/10.1145/151261.151266Google ScholarDigital Library
- David M Nicol and Xiaowen Liu. 1997. The Dark Side of Risk (What your Mother Never Told you About Time Warp). In Proceedings of the 11th Workshop on Parallel and distributed simulation(PADS ’97). IEEE Computer Society, Washington, DC, USA, 188–195. https://doi.org/10.1145/268826.268920Google ScholarDigital Library
- Avinash C Palaniswamy and Philip A Wilsey. 1993. Adaptive Bounded Time Windows in an Optimistically Synchronized Simulator. In Proceedings of the Third Great Lakes Symposium on VLSI(VLSI ’93). IEEE Computer Society, Washington, DC, USA, 114–118. https://doi.org/10.1109/GLSV.1993.224467Google ScholarCross Ref
- Avinash C Palaniswamy and Philip A Wilsey. 1993. An Analytical Comparison of Periodic Checkpointing and Incremental State Saving. In Proceedings of the 7th workshop on Parallel and Distributed Simulation(PADS ’93). ACM Press, New York, New York, USA, 127–134. https://doi.org/10.1145/158459.158475Google ScholarDigital Library
- Avinash C Palaniswamy and Philip A Wilsey. 1994. Scheduling Time Warp Processes Using Adaptive Control Techniques. In Proceedings of the 2004 Winter Simulation Conference, Jeffrey D Tew, Mani S Manivannan, Deborah A Sadowski, and Andrew F Seila (Eds.). IEEE, Piscataway, NJ, USA, 731–738. https://doi.org/10.1109/WSC.1994.717422Google ScholarCross Ref
- Alessandro Pellegrini and Francesco Quaglia. 2014. Wait-free Global Virtual Time Computation in Shared Memory Time Warp Systems. In Proceedings of the 26th International Symposium on Computer Architecture and High Performance Computing(SBAC-PAD ’14). IEEE, Piscataway, NJ, USA, 9–16. https://doi.org/10.1109/SBAC-PAD.2014.38Google ScholarDigital Library
- Alessandro Pellegrini, Roberto Vitali, and Francesco Quaglia. 2009. Di-DyMeLoR: Logging only Dirty Chunks for Efficient Management of Dynamic Memory Based Optimistic Simulation Objects. In Proceedings of the 23rd Workshop on Principles of Advanced and Distributed Simulation(PADS ’09). IEEE, Piscataway, NJ, USA, 45–53. https://doi.org/10.1109/PADS.2009.24Google ScholarDigital Library
- Alessandro Pellegrini, Roberto Vitali, and Francesco Quaglia. 2015. Autonomic State Management for Optimistic Simulation Platforms. IEEE Transactions on Parallel and Distributed Systems 26 (2015), 1560–1569. https://doi.org/10.1109/TPDS.2014.2323967Google ScholarDigital Library
- Andrea Piccione. 2022. Comparing Different Event Set Management Strategies in Speculative PDES. In Proceedings of the 2022 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation(SIGSIM-PADS ’22). ACM, New York, NY, USA, 55–56. https://doi.org/10.1145/3518997.3534993Google ScholarDigital Library
- Dhananjai M Rao, Narayanan V Thondugulam, Radharamanan Radhakrishnan, and Philip A Wilsey. 1998. Unsynchronized Parallel Discrete Event Simulation. In Proceedings of the 1998 Winter Simulation Conference, Deborah J Medeiros, Edward F Watson, John S Carson, and Mani S Manivannan (Eds.). WSC ’98, Vol. 2. IEEE, Piscataway, NJ, USA, 1563–1570. https://doi.org/10.1109/WSC.1998.746030Google ScholarCross Ref
- Peter L Reiher, Frederick Wieland, and David Jefferson. 1989. Limitation of Optimism in the Time Warp Operating System. In Proceedings of the 21st Winter Simulation Conference, Edward A MacNair, Kenneth J Musselman, and Philip Heidelberger (Eds.). ACM, New York, NY, USA, 765–770. https://doi.org/10.1145/76738.76834Google ScholarDigital Library
- Paul F Reynolds. 1988. A Spectrum of Options for Parallel Simulation. In Proceedings of the 20th Winter Simulation Conference, Michael A Abrams, Peter L Haigh, and John C Comfort (Eds.). ACM, New York, NY, USA, 325–332. https://doi.org/10.1109/WSC.1988.716181Google Scholar
- Paul F Reynolds, Chrisopher F Weight, and J Robert Fidler, II. 1989. Comparative Analyses Of Parallel Simulation Protocols. In 1989 Winter Simulation Conference Proceedings, Edward A MacNair, Kenneth J Musselman, and Philip Heidelberg (Eds.). IEEE, Piscataway, NJ, USA, 671–679. https://doi.org/10.1109/WSC.1989.718741Google Scholar
- Tapas K Som and Robert G Sargent. 2000. Model Structure and Load Balancing in Optimistic Parallel Discrete Event Simulation. In Proceedings of the 14th Workshop on Parallel and Distributed Simulation(PADS ’00). IEEE, Piscataway, NJ, USA, 147–154. https://doi.org/10.1109/PADS.2000.847158Google ScholarCross Ref
- Sudhir Srinivasan and Paul F Reynolds. 1998. Elastic Time. ACM Transactions on Modeling and Computer Simulation 8, 2 (April 1998), 103–139. https://doi.org/10.1145/280265.280267Google ScholarDigital Library
- Jeffrey S Steinman. 1991. SPEEDES: Synchronous Parallel Environment for Emulation and Discrete Event Simulation. In Advances in Parallel and Distributed Simulation(PADS ’91), Vijay K Madisetti, David Nicol, and Richard M Fujimoto (Eds.). Society for Computer Simulation, San Diego, CA, USA, 1111–1115.Google Scholar
- Jeffrey S Steinman. 1993. Breathing Time Warp. Simuletter 23, 1 (July 1993), 109–118. https://doi.org/10.1145/174134.158473Google ScholarDigital Library
- Tommaso Tocci, Alessandro Pellegrini, Francesco Quaglia, Josep Casanovas-Garcia, and Toyotaro Suzumura. 2017. ORCHESTRA: An Asynchronous Wait-free Distributed GVT Algorithm. In Proceedings of the 21st International Symposium on Distributed Simulation and Real Time Applications(DS-RT ’17). IEEE, Piscataway, NJ, USA, 1–8. https://doi.org/10.1109/DISTRA.2017.8167666Google ScholarCross Ref
- Stephen J Turner and Ming Qiang Xu. 1991. Performance Evaluation of the Bounded Time Warp Algorithm. In Proceedings of the 6th Workshop on Parallel and Distributed Simulation(PADS ’92), Marc A Abrams and Paul F Reynolds, Jr (Eds.). Society for Computer Simulation, San Diego, CA, USA, 117–126.Google Scholar
- Roberto Vitali, Alessandro Pellegrini, and Francesco Quaglia. 2012. Load sharing for Optimistic Parallel Simulations on Multi Core Machines. ACM SIGMETRICS Performance Evaluation Review 40 (Dec. 2012), 2–11. https://doi.org/10.1145/2425248.2425250Google ScholarDigital Library
- Minh Vu, Lisong Xu, Sebastian Elbaum, Wei Sun, and Kevin Qiao. 2022. Efficient Protocol Testing Under Temporal Uncertain Event Using Discrete-event Network Simulations. ACM Transactions on Modeling and Computer Simulation 32, 2 (March 2022), 1–30. https://doi.org/10.1145/3490028Google ScholarDigital Library
- Philip A Wilsey, Avinash C Palaniswamy, and Sandeep Aji. 1994. Rollback Relaxation: A Technique for Reducing Rollback Costs in Optimistically Synchronized Parallel Simulators. In Proceesings of the 1994 International Conference on Simulation and Hardware Description Languages(ICSHDL ’94), David Rhodes and Philip A Wilsey (Eds.). Society for Computer Simulation, San Diego, CA, USA, 143–148.Google Scholar
Index Terms
- Hybrid Speculative Synchronisation for Parallel Discrete Event Simulation
Recommendations
Load-Aware Dynamic Time Synchronization in Parallel Discrete Event Simulation
SIGSIM-PADS '21: Proceedings of the 2021 ACM SIGSIM Conference on Principles of Advanced Discrete SimulationTraditional Parallel Discrete Event Simulation (PDES) systems employ a monolithic approach for choosing their thread synchronization protocol. They either implement a Time Window-based conservative synchronization or an optimistic event processing ...
Partitioning parallel discrete event simulation
CompSysTech '08: Proceedings of the 9th International Conference on Computer Systems and Technologies and Workshop for PhD Students in ComputingParallel Discrete Event Simulation (PDES) allows to speed up the execution of a simulation by distributing the simulation's workload between multiple processors. The mapping of the simulation entities over the processors is very important with regard to ...
Efficiently unifying parallel simulation techniques
ACM-SE 44: Proceedings of the 44th annual Southeast regional conferenceThis paper introduces a unifying technique that is able to combine the advantages of synchronous, conservative and optimistic simulations. The unifying framework is based on optimistic simulation. The optimized optimistic simulation exploits synchronous ...
Comments