Two-tiered component design and performance analysis of Synergia2 accelerator simulations

  • Authors:
  • Stefan Muszala;James Amundson;Lois Curfman McInnes;Boyana Norris

  • Affiliations:
  • Tech-X Corporation, Boulder, Colorado;Fermilab National Accelerator Laboratory, Batavia, IL;Argonne National Laboratory, Argonne, IL;Argonne National Laboratory, Argonne, IL

  • Venue:
  • Proceedings of the 2009 Workshop on Component-Based High Performance Computing
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

A two-tiered approach to developing software components is beneficial from a performance and software engineering perspective. Fine-grained components encompass low-level functionalities, while coarse-grained components encapsulate more general functionalities; together, the components provide building blocks for quickly and efficiently composing simulations. The two-tiered paradigm facilitated our design and implementation of components using the Common Component Architecture for Synergia2 (a multi-physics accelerator code) and TxPhysics (a library that models the reaction of charged particles with their environment). These codes consist of a mixture of Python, C and C++ and rely on MPI for distributed parallelism. Synergia2 and TxPhysics component simulations of the electron cloud effect (an important feature of accelerator beam dynamics) produced results that were equivalent to the simulations from the original code base. Performance measurements and an initial model of the component simulations are presented along with our component design methodology.