The ROme OpTimistic Simulator: Core Internals and Programming Model

Alessandro Pellegrini, Roberto Vitali, and Francesco Quaglia

Published in: Proceedings of the 4th International ICST Conference on Simulation Tools and Techniques
pdf Download PDF

In this article we overview the ROme OpTimistic Simulator (ROOT-Sim), an open source C/MPI-based simulation package targeted at POSIX systems, which implements a general-purpose parallel/distributed simulation environment relying on the optimistic (i.e., rollback based) synchronization paradigm. It offers a very simple programming model based on the classical notion of simulation-event handlers, to be implemented according to the ANSI-C standard, and transparently supports all the services required to parallelize the execution. It also offers a set of optimized protocols (e.g. CPU scheduling and state log/restore protocols) aimed at minimizing the run-time overhead of the platform, thus allowing for high performance and scalability. Here we overview the core internal mechanisms provided by ROOT-Sim, together with the offered APIs and the programming model that is expected to be agreed in order to produce simulation software that can be transparently run, in a concurrent fashion, on top of the ROOT-Sim layer.

BibTeX Entry:

author = {Pellegrini, Alessandro and Vitali, Roberto and Quaglia, Francesco},
booktitle = {Proceedings of the 4th International {ICST} Conference on Simulation Tools and Techniques},
title = {The {ROme OpTimistic Simulator}: Core Internals and Programming Model},
year = {2011},
pages = {96--98},
publisher = {ICST},
series = {SIMUTools},
journal = {Proceedings of the 4th ICST Conference of Simulation Tools and Techniques},
location = {Barcelona, Spain},
name = {simutools11b}