skip to main content
10.1145/3573900.3591124acmconferencesArticle/Chapter ViewAbstractPublication PagespadsConference Proceedingsconference-collections

Hybrid Speculative Synchronisation for Parallel Discrete Event Simulation

Published:21 June 2023Publication History

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.

References

  1. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  2. 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 ScholarGoogle ScholarCross RefCross Ref
  3. 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 ScholarGoogle Scholar
  4. 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 ScholarGoogle ScholarCross RefCross Ref
  5. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  6. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  7. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  8. 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 ScholarGoogle ScholarCross RefCross Ref
  9. 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 ScholarGoogle ScholarCross RefCross Ref
  10. 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 ScholarGoogle Scholar
  11. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  12. Richard M Fujimoto. 1990. Parallel Discrete Event Simulation. Commun. ACM 33, 10 (Oct. 1990), 30–53. https://doi.org/10.1145/84537.84545Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 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 ScholarGoogle Scholar
  14. 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 ScholarGoogle ScholarCross RefCross Ref
  15. 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 ScholarGoogle ScholarCross RefCross Ref
  16. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  17. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  18. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  19. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  20. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  21. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  22. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  23. 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 ScholarGoogle Scholar
  24. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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 ScholarGoogle ScholarCross RefCross Ref
  26. 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 ScholarGoogle Scholar
  27. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  28. 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 ScholarGoogle Scholar
  29. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  30. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  31. 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 ScholarGoogle ScholarCross RefCross Ref
  32. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  33. 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 ScholarGoogle ScholarCross RefCross Ref
  34. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  35. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  36. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  37. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  38. 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 ScholarGoogle ScholarCross RefCross Ref
  39. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  40. 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 ScholarGoogle Scholar
  41. 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 ScholarGoogle Scholar
  42. 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 ScholarGoogle ScholarCross RefCross Ref
  43. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  44. 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 ScholarGoogle Scholar
  45. Jeffrey S Steinman. 1993. Breathing Time Warp. Simuletter 23, 1 (July 1993), 109–118. https://doi.org/10.1145/174134.158473Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. 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 ScholarGoogle ScholarCross RefCross Ref
  47. 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 ScholarGoogle Scholar
  48. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  49. 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 ScholarGoogle ScholarDigital LibraryDigital Library
  50. 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 ScholarGoogle Scholar

Index Terms

  1. Hybrid Speculative Synchronisation for Parallel Discrete Event Simulation

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                cover image ACM Conferences
                SIGSIM-PADS '23: Proceedings of the 2023 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation
                June 2023
                173 pages
                ISBN:9798400700309
                DOI:10.1145/3573900

                Copyright © 2023 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 21 June 2023

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article
                • Research
                • Refereed limited

                Acceptance Rates

                Overall Acceptance Rate398of779submissions,51%

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader

              HTML Format

              View this article in HTML Format .

              View HTML Format