GPGPU Accelerated Beam Dynamics Interfacing PyHEADTAIL with SixTrackLib
- 1. CERN openlab summer student
Simulations of beam dynamics vastly profit from parallelisation with high performance computing techniques. The two simulation libraries SixTrackLib and PyHEADTAIL are GPGPU accelerated. The former models non-linear particle tracking while the latter models wakefields and space charge using linear tracking. In this project the goal is to explore concepts to bridge the gap between the two simulation codes, thus a potential user can use them as a single simulation code while being abstracted from the interfacing details. Advanced non-linear particle tracking capability is introduced into PyHEADTAIL via SixTrackLib. Therefore collective effects such as space charge and wakefield interactions can be simulated more accurately in view of resonance dynamics and beam instability applications. As an introductory task wakefield calculations are ported to the GPU in order to reduce total simulation time. A major part of the project is to interface PyHEADTAIL with SixTrackLib so that a user of PyHEADTAIL can utilise the non-linear tracking functionality of SixTrackLib via an API in python. This interfacing mechanism works on both the CPU and GPU and the user has the option to switch between the two.