Title
Generation of Reversible C++ Code for Optimistic Parallel Discrete Event Simulation.
Abstract
The reversible execution of C/C++ code has been a target of research and engineering for more than a decade as reversible computation has become a central notion in large-scale parallel discrete event simulation (PDES). The simulation models that are implemented for PDES are of increasing complexity and size and require various language features to support abstraction, encapsulation, and composition when building a simulation model. In this paper, we focus on parallel simulation models that are written with user-defined C++ abstractions and abstractions of the C++ Standard Library. We present an approach based on incremental state saving for establishing reversibility of C++ and an evaluation for a kinetic Monte-Carlo simulation implemented in C++. Although a significant runtime overhead is introduced with our technique, it is an enormous win that it allows using the entire C++ language, and has that code automatically transformed into reversible code to enable parallel execution with the Rensselaer’s optimistic simulation system (ROSS).
Year
DOI
Venue
2018
10.1007/s00354-018-0038-2
New Generation Comput.
Keywords
Field
DocType
Reversible computation, PDES, Checkpointing, Incremental state saving, Program transformation
Optimistic simulation,Parallel simulation,Program transformation,Abstraction,Programming language,Computer science,Parallel computing,Simulation modeling,Encapsulation (computer programming),Computation,Discrete event simulation
Journal
Volume
Issue
ISSN
36
3
1882-7055
Citations 
PageRank 
References 
1
0.40
16
Authors
4
Name
Order
Citations
PageRank
Markus Schordan125923.98
Tomas Oppelstrup2465.94
David R. Jefferson31136213.09
Peter D. Barnes, Jr.4858.44