A Performance Portable, Fully Implicit Landau Collision Operator with Batched Linear Solvers

Abstract

Modern accelerators use hierarchical parallel programming models that enable massive multithreading within a processing element (PE), with multiple PEs per device driven by traditional processes. Batching is a technique for exposing PE-level parallelism in algorithms that previously ran on entire processes or multiple threads within a single MPI process. Kinetic discretizations of magnetized plasmas, for example, advance the Vlasov-Maxwell system, which is then followed by a fully implicit time advance of a collision operator. These collision advances are independent at each spatial point and are well suited to batch processing.

This paper builds on previous work on a high-performance, fully nonlinear Landau collision operator by batching the linear solver, as well as batching the spatial point problems and adding new support for multiple grids for highly multiscale, multi-species problems. An anisotropic relaxation verification test that agrees well with previous published results and analytical solutions is presented. The performance resutls from an NVIDIA A100 node and early results from an AMD MI250X node is presented with a detailed hardware utilization analysis on the A100. For portability, the entire Landau operator time advance is implemented in the Kokkos language and the entire solver is available in the PETSc numerical library. '

Publication
arXiv
Jacob Merson
Jacob Merson
Assistant Professor of Mechanical Engineering

loves to scale multiphysics simulations onto leadership class supercomputers