Monday 18th November, 2013
3:30pm to 4:10pm
Simulations of beam dynamics in particle accelerators have a wide range of computational requirements. The simplest calculations involve independent-particle tracking of a few thousand particles which can easily be accomplished on modern desktop computers. Calculations involving collective effects may require millions or even billions of particles and push the limits of modern supercomputers. We describe Synergia, a hybrid Python/C++ accelerator simulation package capable of dealing with the entire spectrum of beam dynamics simulations. We describe the motivations for the hybrid language design and discuss the issues that arise in the implementation. We also describe the most novel feature of our code, a hybrid C++/Python object serialization system, in detail. The same techniques are of general use in any domain by providing data and computationally intensive C++ frameworks with the advanced programming and user-friendly features of Python.
Fermi National Accelerator Laboratory
4:10pm Compiling Python Modules to Native Parallel Modules Using Pythran and OpenMP Annotations by Mehdi Amini, Pierrick Brunet and Serge Guelton
Sign in to add slides, notes or videos to this session