The ROme OpTimistic Simulator: core internals and programming model

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.

[1]  Roberto Vitali,et al.  Di-DyMeLoR: Logging only Dirty Chunks for Efficient Management of Dynamic Memory Based Optimistic Simulation Objects , 2009, 2009 ACM/IEEE/SCS 23rd Workshop on Principles of Advanced and Distributed Simulation.

[2]  Francesco Quaglia,et al.  A low-overhead constant-time LTF scheduler for optimistic simulation systems , 2010, The IEEE symposium on Computers and Communications.

[3]  Rob Aspin,et al.  A Lightweight Heuristic-based Mechanism for Collecting Committed Consistent Global States in Optimistic Simulation , 2007, 11th IEEE International Symposium on Distributed Simulation and Real-Time Applications (DS-RT'07).

[4]  Roberto Vitali,et al.  Autonomic Log/Restore for Advanced Optimistic Simulation Systems , 2010, 2010 IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems.

[5]  Francesco Quaglia,et al.  DyMeLoR: Dynamic Memory Logger and Restorer Library for Optimistic Simulation Objects with Generic Memory Layout , 2008, 2008 22nd Workshop on Principles of Advanced and Distributed Simulation.