Kokkos
A programming model in C++ for writing performance portable applications targeting all major HPC platforms.
Warning
This installation of Kokkos is experimental and under active testing. Errors or inconsistencies may occur until validation is complete. Please report any issues to RCC Support.
Overview#
Kokkos is a C++ performance portability library that enables developers to write applications that can efficiently execute across different architectures without changing the source code. It provides abstractions for parallel execution and data management that simplify cross-platform HPC development.
Two versions of Kokkos are currently available on RCC systems:
- 4.7.00: Must be used with NVHPC compilers
- 4.5.1: Musit be used with Intel compilers
Loading Kokkos Modules#
NVHPC Build (4.7.00)#
Optional combinations:
Intel Build (4.5.1)#
Optional combinations:
Compiling with Kokkos#
Once loaded, the nvcc_wrapper
compiler wrapper can be used to build C++ codes that utilize Kokkos.
Example Compilation: NVHPC#
If needed, you can include the HWLOC paths explicitly:
Example Compilation: Intel#
With explicit HWLOC paths:
MPI + Kokkos Compilation Examples#
NVHPC#
Intel#
Example Code#
You can find beginner-friendly examples in the Kokkos Tutorials Repository, including examples for:
- Simple data parallel patterns and policies
- Multidimensional array views
- Execution and memory spaces
Getting Help#
For assistance compiling or running Kokkos programs on RCC systems, contact the RCC Support Team.