kokkos/kokkos

Kokkos C++ Performance Portability Programming Ecosystem: The Programming Model - Parallel Execution and Memory Abstraction

What it solves

Kokkos solves the problem of performance portability in High Performance Computing (HPC). It allows developers to write C++ applications that can run efficiently across different hardware platforms without needing to rewrite the code for each specific architecture.

How it works

It provides a C++ programming model that abstracts both parallel execution and data management. This allows the software to target complex node architectures with multiple types of execution resources and N-level memory hierarchies. It supports various backend programming models, including CUDA, HIP, SYCL, HPX, OpenMP, and C++ threads.

Who it’s for

It is designed for developers of performance-critical applications targeting major HPC platforms.

Highlights

  • Support for multiple backends including CUDA, HIP, SYCL, and OpenMP.
  • Abstractions for parallel execution and data management.
  • Designed for complex node architectures with multi-level memory hierarchies.
  • Part of the Linux Foundation and the Kokkos C++ Performance Portability Programming Ecosystem.

Related

  • Project
  • Project
  • Project
  • Project
  • Project