Runtime Management of Simulation Objects Cross-State Dependencies in NUMA-oriented Parallel Simulation Platforms

Francesco Nobilia

pdf Download PDF

Nowadays, the well acceptable solution for speeding-up and making very large and complex simulation models tractable is the parallelDES (PDES) paradigm. In a speculative environment two simulation entities with different simulation times can reach the same portion of simulation state at the same wall-clock time. In this case the system has to manage their accesses always guaranteeing state coherence. For copying with this issue the entire model has been partitioned into distinct Logical Processes (LPs): each LP handles and models a portion of the whole simulated environment/phenomenon, and interacts with others by means of time-stamped event messages (local causality constraint). The reasons behind this disjunction are only technical. They impose a coding style that prevents the possibility that some LP can directly manage more than one state at a time. The purpose of this work is answering to the question raised by Fujimoto whether building a shared state system by using messages only is the natural way to program simulation. Our solution is based over the concept that each LP can directly access the state of any other LP by means of synchronization phase. This behaviour is achieved setting-up each simulation object over a parallel memory view. Further, given that modern parallel machines are organized according to the Non-Uniform-Memory-Accesss (NUMA) model, we also provide approaches for making the access to memory slices associated with the parallel memory view efficient in NUMA systems. We augment the ROme OpTimistic Simulator (ROOTSim) with our proposal and we use this environment as test-bed. Finally, we demonstrate how our approach improves the simulation performance.

BibTeX Entry:

author = {Nobilia, Francesco},
school = {Sapienza, University of Rome},
title = {Runtime Management of Simulation Objects Cross-State Dependencies in NUMA-oriented Parallel Simulation Platforms},
year = {2016},
type = {mathesis},
comment = {Supervisor: F. Quaglia - Co-Supervisor: A. Pellegrini}