Generation of Reversible C plus plus Code for Optimistic Parallel Discrete Event Simulation

被引:23
|
作者
Schordan, Markus [1 ]
Oppelstrup, Tomas [1 ]
Jefferson, David [1 ]
Barnes, Peter D., Jr. [1 ]
机构
[1] Lawrence Livermore Natl Lab, Livermore, CA 94551 USA
关键词
Reversible computation; PDES; Checkpointing; Incremental state saving; Program transformation;
D O I
10.1007/s00354-018-0038-2
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
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).
引用
收藏
页码:257 / 280
页数:24
相关论文
共 50 条
  • [21] Using RngStreams for parallel random number generation in C plus plus and R
    Karl, Andrew T.
    Eubank, Randy
    Milovanovic, Jelena
    Reiser, Mark
    Young, Dennis
    COMPUTATIONAL STATISTICS, 2014, 29 (05) : 1301 - 1320
  • [22] Parallel optimistic logic simulation with event lookahead
    Kim, HK
    Jean, J
    1998 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING - PROCEEDINGS, 1998, : 20 - 27
  • [23] Controling optimistic execution in bulk-synchronous parallel discrete-event simulation
    Marín, M
    SIMULATION IN INDUSTRY 2001, 2001, : 81 - 86
  • [24] VIRTUAL TIME III: UNIFICATION OF CONSERVATIVE AND OPTIMISTIC SYNCHRONIZATION IN PARALLEL DISCRETE EVENT SIMULATION
    Jefferson, David R.
    Barnes, Peter D., Jr.
    2017 WINTER SIMULATION CONFERENCE (WSC), 2017, : 786 - 797
  • [25] Bridging Excel and C/C plus plus Code
    Punuru, Janardhana R.
    Knopf, F. Carl
    COMPUTER APPLICATIONS IN ENGINEERING EDUCATION, 2008, 16 (04) : 289 - 304
  • [26] Analysis and Code Model Extraction for C/C plus plus Source Code
    Wagner, Christian
    Margaria, Tiziana
    Pagendarm, Hans-Georg
    2009 14TH IEEE INTERNATIONAL CONFERENCE ON ENGINEERING OF COMPLEX COMPUTER SYSTEMS (ICECCS), 2009, : 110 - +
  • [27] An algorithm for fully-reversible optimistic parallel simulation
    Peters, MD
    Carothers, CD
    PROCEEDINGS OF THE 2003 WINTER SIMULATION CONFERENCE, VOLS 1 AND 2, 2003, : 864 - 871
  • [28] Research on Parallel Discrete Event Simulator based on a CPU plus MIC Platform
    Chen, Huilong
    Yao, Yiping
    Li, Tianlin
    Li, Jin
    PROCEEDINGS OF THE 2ND INTERNATIONAL CONFERENCE ON ADVANCES IN MECHANICAL ENGINEERING AND INDUSTRIAL INFORMATICS (AMEII 2016), 2016, 73 : 889 - 894
  • [29] Schnek: A C plus plus library for the development of parallel simulation codes on regular grids
    Schmitz, Holger
    COMPUTER PHYSICS COMMUNICATIONS, 2018, 226 : 151 - 164
  • [30] PARALLEL DISCRETE EVENT SIMULATION
    FUJIMOTO, RM
    COMMUNICATIONS OF THE ACM, 1990, 33 (10) : 30 - 53