English

GPU acceleration and performance of the particle-beam-dynamics code Elegant

Computational Physics 2018-11-22 v2 Accelerator Physics

Abstract

Elegant is an accelerator physics and particle-beam dynamics code widely used for modeling and design of a variety of high-energy particle accelerators and accelerator-based systems. In this paper we discuss a recently developed version of the code that can take advantage of CUDA-enabled graphics processing units (GPUs) to achieve significantly improved performance for a large class of simulations that are important in practice. The GPU version is largely defined by a framework that simplifies implementations of the fundamental kernel types that are used by Elegant: particle operations, reductions, particle loss, histograms, array convolutions and random number generation. Accelerated performance on the Titan Cray XK-7 supercomputer is approximately 6-10 times better with the GPU than all the CPU cores associated with the same node count. In addition to performance, the maintainability of the GPU-accelerated version of the code was considered a key design objective. Accuracy with respect to the CPU implementation is also a core consideration. Four different methods are used to ensure that the accelerated code faithfully reproduces the CPU results.

Keywords

Cite

@article{arxiv.1710.07350,
  title  = {GPU acceleration and performance of the particle-beam-dynamics code Elegant},
  author = {J. R. King and I. V. Pogorelov and K. M. Amyx and M. Borland and R. Soliday},
  journal= {arXiv preprint arXiv:1710.07350},
  year   = {2018}
}
R2 v1 2026-06-22T22:19:56.654Z