skip to main content
10.1145/2601381.2601393acmconferencesArticle/Chapter ViewAbstractPublication PagespadsConference Proceedingsconference-collections
research-article

Lock-free pending event set management in time warp

Published: 18 May 2014 Publication History

Abstract

The rapid growth in the parallelism of multi-core processors has opened up new opportunities and challenges for parallel simulation discrete event simulation (PDES). PDES simulators attempt to find parallelism within the pending event set to achieve speedup. Typically the pending event set is sorted to preserve the causal orders of the contained events. Sorting is a key aspect that amplifies contention for exclusive access to the shared event scheduler and events are generally scheduled to follow the time-based order of the pending events. In this work we leverage a Ladder Queue data structure to partition the pending events into groups (called buckets) arranged by adjacent and short regions of time. We assume that the pending events within any one bucket are causally independent and schedule them for execution without sorting and without consideration of their total time-based order. We use the Time Warp mechanism to recover whenever actual dependencies arise. Due to the lack of need for sorting, we further extend our pending event data structure so that it can be organized for lock-free access. Experimental results show consistent speedup for all studied configurations and simulation models. The speedups range from 1.1 to 1.49 with higher speedups occurring with higher thread counts where contention for the shared event set becomes more problematic with a conventional mutex locking mechanism.

References

[1]
H. Avril and C. Tropper. Clustered time warp and logic simulation. In Proceedings of the Ninth Workshop on Parallel and Distributed Simulation (PADS'95), pages 112--119, June 1995.
[2]
C. L. Barrett, K. R. Bisset, S. G. Eubank, X. Feng, and M. V. Marathe. Episimdemics: An efficient algorithm for simulating the spread of infectious disease over large realistic social networks. In Proceedings of the 2008 ACM/IEEE Conference on Supercomputing, pages 37:1--37:12, 2008.
[3]
R. Brown. Calendar queues: A fast O(1) priority queue implementation for the simulation event set problem. Communications of the ACM, 31(10):1220--1227, Oct. 1988.
[4]
T. Dickman, S. Gupta, and P. A. Wilsey. Event pool structures for pdes on many-core beowulf clusters. In Proceedings of the 2013 ACM SIGSIM conference on Principles of advanced discrete simulation, pages 103--114, May 2013.
[5]
R. Fujimoto. Parallel discrete event simulation. Communications of the ACM, 33(10):30--53, Oct. 1990.
[6]
A. Ghuloum. Face the inevitable, embrace parallelism. Communications of the ACM, 52(9):36--38, Sept. 2009.
[7]
T. L. Harris. A pragmatic implementation of non-blocking linked-lists. In Proceedings of the 15th International Conference on Distributed Computing, pages 300--314. Springer-Verlag, 2001.
[8]
S. Heller, M. Herlihy, V. Luchangco, M. Moir, W. N. Scherer, and N. Shavit. A lazy concurrent list-based set algorithm. In Proceedings of the 9th International Conference on Principles of Distributed Systems, OPODIS'05, pages 3--16, 2006.
[9]
D. Jefferson. Virtual time. ACM Transactions on Programming Languages and Systems, 7(3):405--425, July 1985.
[10]
A. Kogan and E. Petrank. Wait-free queues with multiple enqueuers and dequeuers. In Proceedings of the 16th ACM Symposium on Principles and Practice of Parallel Programming, PPoPP '11, pages 223--234, 2011.
[11]
J. Liu, D. M. Nicol, and K. Tan. Lock-free scheduling of logical processes in parallel simulation. In Proceedings of the Fifteenth Workshop on Parallel and Distributed Simulation, PADS '01, pages 22--31. IEEE Computer Society, 2001.
[12]
D. E. Martin, T. J. McBrayer, and P. A. Wilsey.textscwarped: A Time Warp simulation kernel for analysis and application development. In H. El-Rewini and B. D. Shriver, editors, 29th Hawaii International Conference on System Sciences (HICSS-29), volume Volume I, pages 383--386, Jan. 1996.
[13]
M. M. Michael. High performance dynamic lock-free hash tables and list-based sets. In Proceedings of the Fourteenth Annual ACM Symposium on Parallel Algorithms and Architectures, SPAA '02, pages 73--82, 2002.
[14]
M. M. Michael. Hazard pointers: Safe memory reclamation for lock-free objects. IEEE Trans. Parallel Distrib. Syst., 15(6):491--504, June 2004.
[15]
M. M. Michael and M. L. Scott. Correction of a memory management method for lock-free data structures. Technical report, University of Rochester, Rochester, NY, USA, 1995.
[16]
M. M. Michael and M. L. Scott. Nonblocking algorithms and preemption-safe locking on multiprogrammed shared memory multiprocessors. Journal of Parallel and Distributed Computing, 51(1):1--26, May 1998.
[17]
R. Miller. Optimistic parallel discrete event simulation on a beowulf cluster of multi-core machines. Master's thesis, University of Cincinnati, 2010.
[18]
K. Muthalagu. Threaded warped: An optimistic parallel discrete event simulator for clusters fo multi-core machines. Master's thesis, School of Electronic and Computing Systems, University of Cincinnati, Cincinnati, OH, Nov. 2012.
[19]
A. Palaniswamy and P. A. Wilsey. Parameterized Time Warp: An integrated adaptive solution to optimistic pdes. Journal of Parallel and Distributed Computing, 37(2):134--145, Sept. 1996.
[20]
K. S. Perumalla and S. K. Seal. Discrete event modeling and massively parallel execution of epidemic outbreak phenomena. Simulation, 88(7):768--783, July 2012.
[21]
R. S. Pienta and R. M. Fujimoto. On the parallel simulation of scale-free networks. In Proceedings of the 2013 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation, SIGSIM-PADS '13, pages 179--188, 2013.
[22]
S. K. Prasad, S. I. Sawant, and B. Naqib. Using parallel data structures in optimistic discrete event simulation of varying granularity on shared-memory computers. In IEEE First International Conference on Algorithms and Architectures for Parallel Processing, pages 365--374, Apr. 1995.
[23]
R. Radhakrishnan, D. E. Martin, M. Chetlur, D. M. Rao, and P. A. Wilsey. An Object-Oriented Time Warp Simulation Kernel. In D. Caromel, R. R. Oldehoeft, and M. Tholburn, editors, Proceedings of the International Symposium on Computing in Object-Oriented Parallel Environments (ISCOPE'98), volume LNCS 1505, pages 13--23. Springer-Verlag, Dec. 1998.
[24]
R. Radhakrishnan, L. Moore, and P. A. Wilsey. External adjustment of runtime parameters in Time Warp synchronized parallel simulators. In 11th International Parallel Processing Symposium, (IPPS'97). IEEE Computer Society Press, Apr. 1997.
[25]
R. Rajan and P. A. Wilsey. Dynamically switching between lazy and aggressive cancellation in a Time Warp parallel simulator. In Proc. of the 28th Annual Simulation Symposium, pages 22--30. IEEE Computer Society Press, Apr. 1995.
[26]
R. Rönngren, R. Ayani, R. M. Fujimoto, and S. R. Das. Efficient implementation of event sets in time warp. In Proceedings of the 1993 workshop on Parallel and distributed simulation, pages 101--108, May 1993.
[27]
T. Santoro and F. Quaglia. A low-overhead constant-time ltf scheduler for optimistic simulation systems. In Proceedings of the The IEEE symposium on Computers and Communications, pages 948--953, June 2010.
[28]
D. Sleator and R. Tarjan. Self adjusting binary search trees. Journal of the ACM, 32(3):652--686, July 1985.
[29]
W. T. Tang, R. S. M. Goh, and I. L.-J. Thng. Ladder queue: An o(1) priority queue structure for large-scale discrete event simulation. ACM Transactions on Modeling and Computer Simulation, 15(3):175--204, July 2005.
[30]
S. Timnat, A. Braginsky, A. Kogan, and E. Petrank. Wait-free linked-lists. In Proceedings of the 17th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP '12, pages 309--310, 2012.
[31]
J. D. Valois. Lock-free linked lists using compare-and-swap. In Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, PODC '95, pages 214--222, 1995.
[32]
D. J. Watts and S. H. Strogatz. Collective dynamics of 'small-world' networks. Nature, 393:440--442, June 1998.
[33]
K. Zhang, Y. Zhao, Y. Yang, Y. Liu, and M. Spear. Practical non-blocking unordered lists. In Distributed Computing, volume 8205 of Lecture Notes in Computer Science, pages 239--253. Springer Berlin Heidelberg, 2013.

Cited By

View all
  • (2024)Spatial/Temporal Locality-Based Load-sharing in Speculative Discrete Event Simulation on Multi-core MachinesACM Transactions on Modeling and Computer Simulation10.1145/363970335:1(1-31)Online publication date: 25-Nov-2024
  • (2024)A Conflict-Resilient Lock-Free Linearizable Calendar QueueACM Transactions on Parallel Computing10.1145/363516311:1(1-32)Online publication date: 11-Mar-2024
  • (2023)Effective Access to the Committed Global State in Speculative Parallel Discrete Event Simulation on Multi-core MachinesProceedings of the 2023 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation10.1145/3573900.3591117(107-117)Online publication date: 21-Jun-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGSIM PADS '14: Proceedings of the 2nd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation
May 2014
222 pages
ISBN:9781450327947
DOI:10.1145/2601381
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].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 May 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. lock-free
  2. multi-core
  3. pending event lists
  4. threads
  5. time warp

Qualifiers

  • Research-article

Funding Sources

Conference

SIGSIM-PADS '14
Sponsor:

Acceptance Rates

SIGSIM PADS '14 Paper Acceptance Rate 19 of 33 submissions, 58%;
Overall Acceptance Rate 398 of 779 submissions, 51%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 02 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Spatial/Temporal Locality-Based Load-sharing in Speculative Discrete Event Simulation on Multi-core MachinesACM Transactions on Modeling and Computer Simulation10.1145/363970335:1(1-31)Online publication date: 25-Nov-2024
  • (2024)A Conflict-Resilient Lock-Free Linearizable Calendar QueueACM Transactions on Parallel Computing10.1145/363516311:1(1-32)Online publication date: 11-Mar-2024
  • (2023)Effective Access to the Committed Global State in Speculative Parallel Discrete Event Simulation on Multi-core MachinesProceedings of the 2023 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation10.1145/3573900.3591117(107-117)Online publication date: 21-Jun-2023
  • (2022)Comparing Different Event Set Management Strategies in Speculative PDESProceedings of the 2022 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation10.1145/3518997.3534993(55-56)Online publication date: 8-Jun-2022
  • (2022)Spatial/Temporal Locality-based Load-sharing in Speculative Discrete Event Simulation on Multi-core MachinesProceedings of the 2022 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation10.1145/3518997.3531026(81-92)Online publication date: 8-Jun-2022
  • (2021)High-Performance PDES on Manycore ClustersProceedings of the 2021 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation10.1145/3437959.3459252(153-164)Online publication date: 21-May-2021
  • (2020)NUMA-aware non-blocking calendar queueProceedings of the IEEE/ACM 24th International Symposium on Distributed Simulation and Real Time Applications10.5555/3451906.3451915(59-67)Online publication date: 14-Sep-2020
  • (2020)NUMA-Aware Non-Blocking Calendar Queue2020 IEEE/ACM 24th International Symposium on Distributed Simulation and Real Time Applications (DS-RT)10.1109/DS-RT50469.2020.9213639(1-9)Online publication date: Sep-2020
  • (2019)Time Warp Simulation on multi-core platformsProceedings of the Winter Simulation Conference10.5555/3400397.3400514(1454-1468)Online publication date: 8-Dec-2019
  • (2019)Controlled Asynchronous GVTProceedings of the 48th International Conference on Parallel Processing10.1145/3337821.3337927(1-10)Online publication date: 5-Aug-2019
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media