.. role:: raw-html-m2r(raw) :format: html .. include:: mydefs.rst Kokkos: The Programming Model ============================= .. admonition:: :medium:`C++ Performance Portability Programming Model` :class: important :medium:`Kokkos Core implements a programming model in C++ for writing performance portable applications targeting all major HPC platforms. For that purpose it provides abstractions for both parallel execution of code and data management. Kokkos is designed to target complex node architectures with N-level memory hierarchies and multiple types of execution resources. It currently can use CUDA, HIP, SYCL, HPX, OpenMP and C++ threads as backend programming models with several other backends development.` The `Kokkos Ecosystem `_ includes: .. list-table:: :widths: 30 50 20 :header-rows: 1 :align: left * - Name - Info - * - ``kokkos`` - (this library) Programming Model - Parallel Execution and Memory Abstraction - `GitHub link `__ * - ``kokkos-kernels`` - Sparse, dense, batched math kernels - `GitHub link `__ * - ``kokkos-tools`` - Profiling and debugging tools - `GitHub link `__ * - ``pykokkos`` - Provides Python bindings to the Kokkos performance portable parallel programming. - `GitHub link `__ * - ``kokkos-remote-spaces`` - Shared memory semantics across multiple processes - `GitHub link `__ * - ``kokkos-resilience`` - Resilience and Checkpointing Extensions for Kokkos - `GitHub link `__ Related Work for the C++ standard library ----------------------------------------- Relevant and related efforts include: .. list-table:: :widths: 20 45 20 15 :header-rows: 1 :align: left * - Name - Info - Proposal - * - ``mdspan`` - Reference implementation of mdspan targeting C++23 - `P0009 `__ - `GitHub link `__ * - ``stdBLAS`` - Reference Implementation for stdBLAS - `P1673 `__ - `GitHub link `__ Questions? ---------- Find us on Slack: https://kokkosteam.slack.com or open an issue on `github `_. Website Content --------------- .. toctree:: :maxdepth: 1 get-started programmingguide api-references tutorials-and-examples contributing GitHub Repo known-issues faq citation license