ABSTRACT
A recent trend has shown the relevance of PDES paradigms where simulation objects are no longer seen as fully disjoint entities only interacting via events' scheduling. Particularly, mutual cross-state access (as a form of state sharing) can represent an approach enabling the simplification of the programmer's job. In this article, we present a multi-core oriented Time Warp platform supporting so called granular objects, where cross-state access is transparently enabled jointly with the dynamic clustering (granulation) of objects into groups depending on the volume of mutual state accesses along phases of the model execution. Each group represents an island where activities are sequentially dispatched in timestamp order. Concurrency is still preserved by enabling the optimistic execution of the different islands. Granulated objects do not pay synchronization costs due to mutual causal inconsistencies. Also, the underlying Time Warp platform does not pay memory management (e.g. memory access tracing) overheads to determine that mutual accesses are taking place within a group. Overall, the platform transparently (and dynamically) determines a well-suited granulation of the overall model state, and a corresponding level of concurrency, depending on the actual state access pattern by the simulation code. As far as we know, this is the first study where the problem of clustering Time Warp simulation objects is addressed for the case of in-place cross-object state accesses by the application code, and where dynamic granulation of multiple objects in a larger one is supported in a fully transparent manner. We integrated our proposal in the open source ROOT-Sim platform.
- P. Bauer, J. Lindén, S. Engblom, and B. Jonsson. Efficient Inter-Process Synchronization for Parallel Discrete Event Simulation on Multicores. In Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete Simulation, SIGSIM-PADS, pages 183--194. ACM Press, 2015. Google ScholarDigital Library
- B. H. Bloom. Space/Time Trade-offs in Hash Coding with Allowable Errors. Communications of the ACM, 13(7):422--426, 1970. Google ScholarDigital Library
- C. D. Carothers, D. W. Bauer, and S. Pearce. ROSS: A High-performance, Low-memory, Modular Time Warp System. Journal of Parallel and Distributed Computing, 62(11):1648--1669, 2002.Google ScholarCross Ref
- C. D. Carothers and R. M. Fujimoto. Efficient Execution of Time Warp Programs on Heterogeneous, NOW Platforms. IEEE Transactions on Parallel and Distributed Systems, 11(3):299--317, 2000. Google ScholarDigital Library
- C. D. Carothers, K. S. Perumalla, and R. M. Fujimoto. Efficient Optimistic Parallel Simulations Using Reverse Computation. ACM Transactions on Modeling and Computer Simulation, 9(3):224--253, 1999. Google ScholarDigital Library
- L.-l. Chen, Y.-s. Lu, Y.-P. Yao, S.-l. Peng, and L.-d. Wu. A Well-Balanced Time Warp System on Multi-Core Environments. In Proceedings of the 25th Workshop on Principles of Advanced and Distributed Simulation, PADS, pages 1--9. IEEE Computer Society, 2011. Google ScholarDigital Library
- D. Cingolani, A. Pellegrini, and F. Quaglia. Transparently Mixing Undo Logs and Software Reversibility for State Recovery in Optimistic PDES. In Proceedings of the 2015 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation, SIGSIM-PADS, pages 211--222. ACM Press, 2015. Google ScholarDigital Library
- D. Fox, J. Ko, K. Konolige, B. Limketkai, D. Schulz, and B. Stewart. Distributed Multirobot Exploration and Mapping. Proceedings of the IEEE, 94(7):1325--1339, 2006.Google Scholar
- R. M. Fujimoto. Performance of Time Warp Under Synthetic Workloads. In Proceedings of the Multiconference on Distributed Simulation, pages 23--28. Society for Computer Simulation, 1990.Google Scholar
- D. W. Glazer and C. Tropper. On Process Migration and Load Balancing in Time Warp. IEEE Transactions on Parallel and Distributed Systems, 4(3):318--327, 1993. Google ScholarDigital Library
- M. P. Herlihy. Wait-free Synchronization. ACM Transactions on Programming Languages and Systems, 13(1):124--149, 1991. Google ScholarDigital Library
- D. R. Jefferson. Virtual Time. ACM Transactions on Programming Languages and System, 7(3):404--425, 1985. Google ScholarDigital Library
- H. Mehl. A Deterministic Tie-breaking Scheme for Sequential and Distributed Simulation. In Proceedings of the 6th Workshop on Parallel and Distributed Simulation, PADS. ACM Press, 1992.Google Scholar
- R. E. Odeh and D. E. Knuth. The Art of Computer Programming. Volume 1: Fundamental Algorithms., volume 64. Addison-Wesley Professional, mar 1969.Google Scholar
- A. Pellegrini and F. Quaglia. Programmability and Performance of Parallel ECS-based Simulation of Multi-Agent Exploration Models. In Proceedings of the 2nd Workshop on Parallel and Distributed Agent-Based Simulations, PADABS, pages 395--406. LNCS, Springer-Verlag, 2014.Google ScholarDigital Library
- A. Pellegrini and F. Quaglia. Transparent Multi-core Speculative Parallelization of DES Models with Event and Cross-state Dependencies. In Proceedings of the 2nd ACM SIGSIM Conference on Principles of advanced discrete simulation, SIGSIM-PADS, pages 105--116. ACM Press, 2014. Google ScholarDigital Library
- A. Pellegrini, R. Vitali, S. Peluso, and F. Quaglia. Transparent and Efficient Shared-State Management for Optimistic Simulations on Multi-core Machines. In Proceedings of the 20th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, MASCOTS, pages 134--141. IEEE Computer Society, 2012. Google ScholarDigital Library
- A. Pellegrini, R. Vitali, F. Quaglia, A. Pellegrini, and F. Quaglia. Autonomic State Management for Optimistic Simulation Platforms. IEEE Transactions on Parallel and Distributed Systems, 26(6):1560--1569, 2015.Google ScholarDigital Library
- R. Rönngren, M. Liljenstam, R. Ayani, and J. Montagnat. Transparent Incremental State Saving in Time Warp Parallel Discrete Event Simulation. In Proceedings of the 10th Workshop on Parallel and Distributed Simulation, PADS, pages 70--77. IEEE Computer Society, 1996. Google ScholarDigital Library
- S. J. Swamidass and P. Baldi. Mathematical Correction for Fingerprint Similarity Measures to Improve Chemical Retrieval. Journal of Chemical Information and Modeling, 47(3):952--964, 2007.Google ScholarCross Ref
- The High Performance and Dependable Computing Systems Research Group (HPDCS). ROOT-Sim: The ROme OpTimistic Simulator. https://github.com/HPDCS/ROOT-Sim, 2012.Google Scholar
- R. Vitali, A. Pellegrini, and F. Quaglia. Load Sharing for Optimistic Parallel Simulations on Multi-core Machines. ACM SIGMETRICS Performance Evaluation Review, 40(3):2, 2012. Google ScholarDigital Library
- R. Vitali, A. Pellegrini, and F. Quaglia. Towards Symmetric Multi-threaded Optimistic Simulation Kernels. In Proceedings of the 26th Workshop on Principles of Advanced and Distributed Simulation, PADS, pages 211--220. IEEE Computer Society, 2012. Google ScholarDigital Library
- J. Wang, D. Jagtap, N. B. Abu-Ghazaleh, and D. Ponomarev. Parallel Discrete Event Simulation for Multi-core Systems: Analysis and Optimization. IEEE Transactions on Parallel and Distributed Systems, 25(6):1574--1584, 2014. Google ScholarDigital Library
- D. West and K. Panesar. Automatic Incremental State Saving. In Proceedings of the 10th Workshop on Parallel and Distributed Simulation, PADS, pages 78--85. IEEE Computer Society, 1996. Google ScholarDigital Library
Index Terms
- Granular Time Warp Objects
Recommendations
Time Warp on the GPU: Design and Assessment
SIGSIM-PADS '17: Proceedings of the 2017 ACM SIGSIM Conference on Principles of Advanced Discrete SimulationThe parallel execution of discrete-event simulations on commodity GPUs has been shown to achieve high event rates. Most previous proposals have focused on conservative synchronization, which typically extracts only limited parallelism in cases of low ...
Overheads reduction of the distributed time warp 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) is a basic approach for evaluation of complex systems. A PDES attempts to speed up the execution of a simulation by distributing the simulation's workload between multiple processors. A network of workstations ...
Time-Sharing Time Warp via Lightweight Operating System Support
SIGSIM PADS '15: Proceedings of the 3rd ACM SIGSIM Conference on Principles of Advanced Discrete SimulationThe order according to which the different tasks are carried out within a Time Warp platform has a direct impact on performance, given that event processing is speculative, thus being subject to the possibility of being rolled-back. It is typically ...
Comments