Skip to main content
SHARE
Publication

Kokkos 3: Programming Model Extensions for the Exascale Era

Publication Type
Journal
Journal Name
IEEE Transactions on Parallel and Distributed Systems
Publication Date
Page Numbers
805 to 817
Volume
33
Issue
4

As the push towards exascale hardware has increased the diversity of system architectures, performance portability has become a critical aspect for scientific software. We describe the Kokkos Performance Portable Programming Model that allows developers to write single source applications for diverse high-performance computing architectures. Kokkos provides key abstractions for both the compute and memory hierarchy of modern hardware. We describe the novel abstractions that have been added to Kokkos version 3 such as hierarchical parallelism, containers, task graphs, and arbitrary-sized atomic operations to prepare for exascale era architectures. We demonstrate the performance of these new features with reproducible benchmarks on CPUs and GPUs.