DaStGen—A Data Structure Generator for Parallel C++ HPC Software

  • Hans–Joachim Bungartz
  • Wolfgang Eckhardt
  • Miriam Mehl
  • Tobias Weinzierl
Conference paper

DOI: 10.1007/978-3-540-69389-5_25

Part of the Lecture Notes in Computer Science book series (LNCS, volume 5103)
Cite this paper as:
Bungartz H., Eckhardt W., Mehl M., Weinzierl T. (2008) DaStGen—A Data Structure Generator for Parallel C++ HPC Software. In: Bubak M., van Albada G.D., Dongarra J., Sloot P.M.A. (eds) Computational Science – ICCS 2008. ICCS 2008. Lecture Notes in Computer Science, vol 5103. Springer, Berlin, Heidelberg

Abstract

Simulation codes often suffer from high memory requirements. This holds in particular if they are memory-bounded, and, with multicore systems coming up, the problem will become even worse as more and more cores have to share the memory connections. To optimise data structures with respect to memory manually is error-prone and cumbersome.

This paper presents the tool DaStGen translating classes declared in C++ syntax and augmented by new keywords into plain C++ code. The tool automates the record optimisation, as it analyses the potential range of each attribute, and as the user can restrict this range further. Herefrom, the generated code stores multiple attributes within one single primitive type. Furthermore, the tool derives user-defined MPI data types for each class. Using the tool reduces any algorithm’s memory footprint, it speeds up memory-bounded applications such as CFD codes, and it hides technical details of MPI applications from the programmer.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Hans–Joachim Bungartz
    • 1
  • Wolfgang Eckhardt
    • 1
  • Miriam Mehl
    • 1
  • Tobias Weinzierl
    • 1
  1. 1.Technische Universität MünchenGarchingGermany

Personalised recommendations