SC19 Proceedings

The International Conference for High Performance Computing, Networking, Storage, and Analysis

Poster 72: Kokkos and Fortran in the Exascale Computing Project Plasma Physics Code XGC


Authors: Aaron Scheinberg (Princeton Plasma Physics Laboratory), Guangye Chen (Los Alamos National Laboratory), Stephane Ethier (Princeton Plasma Physics Laboratory), Stuart Slattery (Oak Ridge National Laboratory), Robert Bird (Los Alamos National Laboratory), Pat Worley (PHWorley Consulting), Choong-Seock Chang (Princeton Plasma Physics Laboratory)

Abstract: Numerical plasma physics models such as the particle-in-cell XGC code are important tools to understand phenomena encountered in experimental fusion devices. Adequately resolved simulations are computationally expensive, so optimization is essential. To address the need for consistent high performance by cutting-edge scientific software applications, frameworks such as Kokkos have been developed to enable portability as new architectures require hardware-specific coding implementation for best performance. Cabana, a recent extension to Kokkos developed with the ECP-CoPA project, is a library of common kernels and operations typically necessary for particle-based codes. The Kokkos/Cabana framework enables intuitive construction of particle-based codes, while maintaining portability between architectures. Here, we summarize the adoption by XGC of the execution and data layout patterns offered by this framework. We demonstrate a method for Fortran codes to adopt Kokkos and show that it can provide a single, portable code base that performs well on both GPUs and multicore machines.

Best Poster Finalist (BP): no

Poster: PDF
Poster summary: PDF


Back to Poster Archive Listing