A Distributed Shared-Memory Middleware for Speculative Parallel Discrete Event Simulation

Matteo Principe, Tommaso Tocci, Pierangelo Di Sanzo, Francesco Quaglia, and Alessandro Pellegrini

Published in: ACM Transactions on Modeling and Computer Simulation, 2020
pdf Download PDF

The large diffusion of multi-core machines has pushed the research in the field of Parallel Discrete Event Simulation (PDES) towards new programming paradigms, based on the exploitation of shared memory. On the opposite side, the advent of Cloud computing—and the possibility to group together many (low-cost) virtual machines to form a distributed-memory cluster capable of hosting simulation applications—has raised the need to bridge shared-memory programming and seamless distributed execution. In this article, we present the design of a distributed middleware that transparently allows a PDES application coded for shared memory systems to run on clusters of (Cloud) resources. Our middleware is based on a synchronization protocol called Event & Cross State (ECS) Synchronization. It allows cross-simulation-object access by event handlers, thus representing a powerful tool for the development of various types of PDES applications. We also provide data for an experimental assessment of our middleware architecture, which has been integrated into the open source ROOT-Sim speculative PDES platform.

BibTeX Entry:

author = {Principe, Matteo and Tocci, Tommaso and Di Sanzo, Pierangelo and Quaglia, Francesco and Pellegrini, Alessandro},
title = {A Distributed Shared-Memory Middleware for Speculative Parallel Discrete Event Simulation},
journal = {ACM Transactions on Modeling and Computer Simulation},
year = {2020},
volume = {30},
number = {2},
issn = {1049-3301},
pages = {11:1--11:26},
month = feb,
doi = {10.1145/3373335},
publisher = {ACM},
series = {TOMACS}