Skip to main content

Reverse Code Generation for Parallel Discrete Event Simulation

  • Conference paper
  • First Online:
Reversible Computation (RC 2015)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9138))

Included in the following conference series:

Abstract

Reverse computation has become a central notion in discrete event simulation over the last decade. It is not just a theoretical line of research, but an immensely practical one that is necessary to achieve high performance for large parallel discrete event simulations (PDES). The 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 in C++ and present an approach for automatically generating reverse code for C++. The strategy we have adopted for our approach is to first assure that we can correctly handle event methods that use the entire C++ language. Although a significant runtime overhead is introduced with our technique, the assurance that the reverse code is always generated fully automatically is an enormous win that can open the door to routine optimistic simulation with models that can be implemented using the entire C++ language.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Carothers, C.D., Perumalla, K.S., Fujimoto, R.M.: Efficient optimistic parallel simulations using reverse computation. ACM Trans. Model. Comput. Simul. 9(3), 224–253 (1999)

    Article  Google Scholar 

  2. Perumalla, K.S.: Introduction to Reversible Computing (2013)

    Google Scholar 

  3. Barnes, Jr., P.D., Carothers, C.D., Jefferson, D.R., LaPre, J.M.: Warp speed: executing time warp on 1,966,080 cores. In: Proceedings of the 2013 ACM SIGSIM Conference on Principles of Advanced Discrete Simulation. SIGSIM-PADS 2013, pp. 327–336. ACM, New York (2013)

    Google Scholar 

  4. Fujimoto, R.M.: Parallel and Distribution Simulation Systems, 1st edn. John Wiley & Sons Inc, New York (1999)

    Google Scholar 

  5. Quinlan, D., Liao, C., Matzke, R., Schordan, M., Panas, T., Vuduc, R., Yi, Q.: ROSE Web Page (2014). http://www.rosecompiler.org

  6. Vulov, G., Hou, C., Vuduc, R., Fujimoto, R., Quinlan, D., Jefferson, D.: The backstroke framework for source level reverse computation applied to parallel discrete event simulation. In: Proceedings of the Winter Simulation Conference. WSC 2011, Winter Simulation Conference, pp. 2965–2979 (2011)

    Google Scholar 

  7. Holder, A.O., Carothers, C.D.: Analysis of time warp on a 32,768 processor ibm blue gene/l supercomputer. In: Proceedings of the European Modeling and Simulation Symposium (EMSS) (2008)

    Google Scholar 

  8. Jefferson, D.R.: Virtual time. ACM Trans. Program. Lang. Syst. 7(3), 404–425 (1985)

    Article  MathSciNet  Google Scholar 

  9. Perumalla, K.S., Park, A.J.: Reverse computation for rollback-based fault tolerance in large parallel systems. Cluster Computing 17(2), 303–313 (2014)

    Article  Google Scholar 

  10. LaPre, J.M., Gonsiorowski, E.J., Carothers, C.D.: Lorain: a step closer to the pdes ’holy grail’. In: Proceedings of the 2nd ACM SIGSIM/PADS Conference on Principles of Advanced Discrete Simulation. SIGSIM-PADS 2014, pp. 3–14. ACM, New York (2014)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Markus Schordan .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Schordan, M., Jefferson, D., Barnes, P., Oppelstrup, T., Quinlan, D. (2015). Reverse Code Generation for Parallel Discrete Event Simulation. In: Krivine, J., Stefani, JB. (eds) Reversible Computation. RC 2015. Lecture Notes in Computer Science(), vol 9138. Springer, Cham. https://doi.org/10.1007/978-3-319-20860-2_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-20860-2_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-20859-6

  • Online ISBN: 978-3-319-20860-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics