Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

A PDEVS simulator supporting multiple synchronization protocols

Published: 01 April 2018 Publication History

Abstract

With the ever-increasing complexity of simulation models, parallel simulation becomes necessary to perform simulation within reasonable time bounds. The built-in parallelism of Parallel DEVS is often insufficient to tackle this problem on its own. Several synchronization protocols have been proposed, each with their distinct advantages and disadvantages. Due to the significantly different implementation of these protocols, most Parallel DEVS simulation tools are limited to only one such protocol. In this paper, we present a Parallel DEVS simulator, grafted on C++11 and based on PythonPDEVS, supporting both conservative and optimistic synchronization protocols. The simulator not only supports both protocols but also has the capability to switch between them at runtime. The simulator can combine each synchronization protocols with either a threaded or sequential implementation of the PDEVS protocol. We evaluate the performance gain obtained by choosing the most appropriate synchronization protocol. A comparison is made to adevs in terms of CPU time and memory usage, to show that our modularity does not hinder performance. We compare the speedup obtained by synchronization with that of the inherent parallelism of PDEVS in isolation and combination, and contrast the results with the theoretical limits. We further allow for an external component to gather simulation statistics, on which runtime switching between the different synchronization protocols can be based. The effects of allocation on our synchronization protocols are also studied.

References

[1]
1 Zeigler B, Praehofer H, Kim TG . Theory of Modeling and Simulation. 2nd ed. New York: Academic Press, 2000.
[2]
2 Vangheluwe H . DEVS as a common denominator for multi-formalism hybrid systems modelling. In IEEE International Symposium on Computer-Aided Control System Design, pp. pp.129-–134.
[3]
3 Chow ACH, Zeigler B . Parallel DEVS: a parallel, hierarchical, modular, modeling formalism. In Proceedings of the 1994 Winter Simulation Multiconference, pp. pp.716-–722.
[4]
4 Himmelspach J, Uhrmacher A . Sequential processing of PDEVS models. In Proceedings of the 3rd European Modeling & Simulation Symposium, pp. pp.239-–244.
[5]
5 Fujimoto R . Parallel and Distributed Simulation Systems. 1st ed.New York: John Wiley & Sons, Inc., 1999.
[6]
6 Kim KH, Seong YR, Kim TG, et al. Distributed simulation of hierarchical DEVS models: Hierarchical scheduling locally and time warp globally. Trans SCS1996; Volume 13 Issue 3: pp.135-–154.
[7]
7 Jafer S, Wainer G . Conservative vs. optimistic parallel simulation of DEVS and Cell-DEVS: A comparative study. In Proceedings of the 2010 Summer Simulation Multiconference, pp. pp.342-–349.
[8]
8 Cardoen B, Manhaeve S, Tuijn T, et al. Performance analysis of a PDEVS simulator supporting multiple synchronization protocols. In Proceedings of the 2016 Symposium on Theory of Modeling and Simulation - DEVS, pp. pp.614-–621.
[9]
9 Van Tendeloo Y, Vangheluwe H . The modular architecture of the PythonPDEVS simulation kernel. In Proceedings of the 2014 Symposium on Theory of Modeling and Simulation - DEVS, pp. pp.387-–392.
[10]
10 Nutaro J . adevs, 2015. Available at: <ext-link ext-link-type="uri" xlink:href="http://www.ornl.gov/~1qn/adevs/">http://www.ornl.gov/~1qn/adevs/</ext-link>.
[11]
11 Jefferson D . Virtual time. ACM Trans Program Lang Syst1985; Volume 7 Issue 3: pp.404-–425.
[12]
12 Van Tendeloo Y . Activity-aware DEVS simulation. Master's Thesis, University of Antwerp, Antwerp, Belgium, 2014.
[13]
13 Chen B, Vangheluwe H . Symbolic flattening of DEVS models. In Proceedings of the 2010 Summer Simulation Multiconference, pp. pp.209-–218.
[14]
14 Barros F . Modeling formalisms for dynamic structure systems. ACM Trans Modeling Comput Sim1997; Volume 7 : pp.501-–515.
[15]
15 Van Tendeloo Y, Vangheluwe H . An overview of PythonPDEVS. In Red CW ed. JDF 2016 - Les Journées DEVS Francophones - Théorie et Applications, pp. pp.59-–66.
[16]
16 Van Tendeloo Y, Vangheluwe H . Activity in PythonPDEVS. In Proceedings of the workshop on Activity-based Modeling and Simulation, pp. pp.2:1-–2:10.
[17]
17 . OpenMP application program interface version 4.5, 2015. Available at: <ext-link ext-link-type="uri" xlink:href="http://www.openmp.org/mp-documents/openmp-4.5.pdf">http://www.openmp.org/mp-documents/openmp-4.5.pdf</ext-link>.
[18]
18 Mattern F . Efficient algorithms for distributed snapshots and global virtual time approximation. J Parallel Distrib Comput1993; Volume 18 Issue 4: pp.423-–434.
[19]
19 Drepper U . What every programmer should know about memory, 2007. Available at: <ext-link ext-link-type="uri" xlink:href="https://lwn.net/Articles/250967/">https://lwn.net/Articles/250967/</ext-link>.
[20]
20 Hanson D . Fast allocation and deallocation of memory based on object lifetimes. Software Practice Experience1990; Volume 20 Issue 1: pp.5-–12.
[21]
21 Cleary S, Bristow P . Boost Pool: Fast memory pool allocation, 2011. Available at: <ext-link ext-link-type="uri" xlink:href="http://www.boost.org/doc/libs/1_61_0/libs/pool/doc/html/">http://www.boost.org/doc/libs/1_61_0/libs/pool/doc/html/</ext-link>.
[22]
22 Ghemawat S, Menage P . TCMalloc: Thread-caching malloc, 2005. Available at: <ext-link ext-link-type="uri" xlink:href="http://goog-perftools.sourceforge.net/doc/tcmalloc.html">http://goog-perftools.sourceforge.net/doc/tcmalloc.html</ext-link>.
[23]
23 L'Ecuyer P . Random numbers for simulation. Commun ACM1990; Volume 33 Issue 10: pp.85-–97.
[24]
24 Bauke H, Mertens S . Random numbers for large-scale distributed Monte Carlo simulations. Phys Rev E2007; Volume 75 Issue 6: pp.066701.
[25]
25 Wainer G, Glinsky E, Gutierrez-Alcaraz M . tudying performance of devs modeling and simulation environments using the devstone benchmark. Simulation2011; Volume 87 Issue 7: pp.555-–580.
[26]
26 Van Tendeloo Y, Vangheluwe H . An evaluation of DEVS simulation tools. Simulation2016; Volume 93 Issue 2: pp.103-–121.
[27]
27 Zeigler B, Nutaro J, Seo C . What's the best possible speedup achievable in distributed simulation: Amdahl's law reconstructed. In Proceedings of the 2015 Symposium on Theory of Modeling and Simulation - DEVS, pp. pp.189-–196.
[28]
28 Glinsky E, Wainer G . DEVStone: a benchmarking technique for studying performance of DEVS modeling simulation environments. In Proceedings of the 9th IEEE/ACM International Symposium on Distributed Simulation and Real-Time Applications, pp. pp.265-–272.
[29]
29 Fujimoto R . Performance of Time Warp under synthetic workloads. In Proceedings of the SCS Multiconference on Distributed Simulation, pp. pp.23-–28.
[30]
30 Muzy A, Nutaro J . Algorithms for efficient implementations of the DEVS & DSDEVS abstract simulators. In 1st Open International Conference on Modeling and Simulation OICMS, pp. pp.273-–279.
[31]
31 Van Tendeloo Y, Vangheluwe H . PythonPDEVS: a distributed Parallel DEVS simulator. In Proceedings of the 2015 Symposium on Theory of Modeling and Simulation - DEVS, pp. pp.844-–851.
[32]
32 Jelasity M . Gossip. Berlin: Springer, 2011, pp. pp.139-–162.
[33]
33 Quesnel G, Duboz R, Ramat E, et al. VLE: a multimodeling and simulation environment. In Proceedings of the 2007 Summer Simulation Multiconference, pp. pp.367-–374.
[34]
34 Bergero F, Kofman E . PowerDEVS: a tool for hybrid system modeling and real-time simulation. Simulation2011; Volume 87 Issue 1-2: pp.113-–132.
[35]
35 Wainer G . CD++: a toolkit to develop DEVS models. Software Practice Experience2002; Volume 32 Issue 13: pp.1261-–1306.
[36]
36 Jafer S, Wainer G . Flattened conservative parallel simulator for DEVS and Cell-DEVS. In Proceedings of International Conferences on Computational Science and Engineering, pp. pp.443-–448.
[37]
37 Troccoli A, Wainer G . Implementing Parallel Cell-DEVS. In Proceedings of the 36th Annual Symposium on Simulation, pp. pp.273-–280.
[38]
38 Vicino D, Niyonkuru D, Wainer G, et al. Sequential PDEVS architecture. In Proceedings of the 2015 Symposium on Theory of Modeling and Simulation - DEVS, pp. pp.165-–172.
[39]
39 Capocchi L, Santucci JF, Zeigler B . PDEVS protocol performance prediction using activity patterns with Finite Probabilistic DEVS. In Proceedings of the 2016 Symposium on Theory of Modeling and Simulation - DEVS, pp. pp.605-–613.
[40]
40 Jha V, Bagrodia R . A unified framework for conservative and optimistic distributed simulation. In Proceedings of the 8th workshop on Parallel and distributed simulation, pp. pp.12-–19.
[41]
41 Das S . Adaptive protocols for parallel discrete event simulation. In Proceedings of the 1996 Winter Simulation Conference, pp. pp.186-–193.
[42]
42 Perumalla K . μsik-a micro-kernel for parallel/distributed simulation systems. In Workshop on Principles of Advanced and Distributed Simulation, pp. pp.59-–68.
[43]
43 Bahulkar K, Wang J, Abu-Ghazaleh N, et al. Partitioning on dynamic behavior for parallel discrete event simulation. In Proceedings of the ACM/IEEE/SCS 26th Workshop on Principles of Advanced and Distributed Simulation, pp. pp.221-–230.
[44]
44 Nicol D . Scalability, locality, partitioning and synchronization PDES. In Proceedings of the 12th Workshop on Parallel and Distributed Simulation, pp. pp.5-–11.
[45]
45 Himmelspach J, Ewald R, Leye S, et al. Parallel and distributed simulation of Parallel DEVS models. In Proceedings of the 2007 Spring Simulation Multiconference - Volume 2, pp. pp.249-–256.
[46]
46 Ewald R, Himmelspach J, Uhrmacher A . A non-fragmenting partitioning algorithm for hierarchical models. In Proceedings of the 2006 Winter Simulation Conference, pp. pp.848-–855.
[47]
47 Fujimoto R, Hybinette M . Computing Global Virtual Time in shared-memory multiprocessors. ACM Transactions on Modeling and Computer Simulation1997; Volume 7 Issue 4: pp.425-–446.
[48]
48 Bauer D, Yaun G, Carothers C, et al. Seven-O'Clock: A new distributed GVT algorithm using network atomic operations. In Proceedings of the Workshop on Principles of Advanced and Distributed Simulation, pp. pp.39-–48.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Simulation
Simulation  Volume 94, Issue 4
4 2018
94 pages

Publisher

Society for Computer Simulation International

San Diego, CA, United States

Publication History

Published: 01 April 2018

Author Tags

  1. DEVS
  2. conservative
  3. optimistic
  4. parallel
  5. performance

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 28 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2023)A Parallel Algorithm to Accelerate DEVS Simulations in Shared Memory ArchitecturesIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2023.325608334:5(1609-1620)Online publication date: 1-May-2023
  • (2022)Advanced Cell-DEVS modeling applicationsSimulation10.1177/003754971876159698:6(465-491)Online publication date: 1-Jun-2022
  • (2020)Energy efficiency evaluation of parallel execution of devs models in multicore architecturesProceedings of the Winter Simulation Conference10.5555/3466184.3466432(2173-2183)Online publication date: 14-Dec-2020
  • (2020)Parallel execution of DEVS in shared-memory multicore architecturesProceedings of the 2020 Spring Simulation Conference10.5555/3408207.3408249(1-11)Online publication date: 19-May-2020
  • (2018)Hybrid systems modelingSimulation10.1177/003754971875842894:3(177-178)Online publication date: 1-Mar-2018

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media