The Ultimate Share-Everything PDES System

Mauro Ianni, Romolo Marotta, Davide Cingolani, Alessandro Pellegrini, and Francesco Quaglia

Published in: Proceedings of the 2018 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation
pdf Download PDF

The share-everything PDES (Parallel Discrete Event Simulation) paradigm is based on fully sharing the possibility to process any individual event across concurrent threads, rather than binding Logical Processes (LPs) and their events to threads. It allows concentrating, at any time, the computing power—the CPU-cores on board of a shared-memory machine—towards the unprocessed events that stand closest to the current commit horizon of the simulation run. This fruitfully biases the delivery of the computing power towards the hot portion of the model execution trajectory. In this article we present an innovative share-everything PDES system that provides (1) fully non-blocking coordination of the threads when accessing shared data structures and (2) fully speculative processing capabilities—Time Warp style processing—of the events. As we show via an experimental study, our proposal can cope with hard workloads where both classical Time Warp systems—based on LPs to threads binding—and previous share-everything proposals—not able to exploit fully speculative processing of the events—tend to fail in delivering adequate performance.

BibTeX Entry:

author = {Ianni, Mauro and Marotta, Romolo and Cingolani, Davide and Pellegrini, Alessandro and Quaglia, Francesco},
booktitle = {Proceedings of the 2018 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation},
title = {The Ultimate Share-Everything PDES System},
year = {2018},
month = may,
pages = {73--84},
publisher = {ACM},
series = {PADS},
doi = {10.1145/3200921.3200931},
location = {Rome, Italy}