Getting Started With Koskos
Introduction to Kokkos
Kokkos is a library inside Trilinos
that "implements a programming model in C++ for writing performance portable applications targeting all major
High Performance Computing (HPC) platforms".
In short, Kokkos "provides abstractions for both parallel execution of code and data management".
Learning Kokkos
- Prerequisites:
- Tutorial:
- Exercise:
There are several
practice exercises available for better understanding the library.
Resources
- Documentation:
Here is the official documentation for
Kokkos package.
- Here are some good resources:
-
Kokkos, a Manycore Device Performance Portability Library for C++ HPC Applications,
by Carter Edwards, Christian Trott, and Daniel Sunderland.
-
A Trilinos package for manycore performance portability,
by Carter Edwards, Christian Trott, and Daniel Sunderland.
-
Memory Spaces, Execution Spaces, Execution Policies, Defaults,and C++11,
by Carter Edwards and Christian Trott.
-
Thread-scalable programming with Tpetra and Kokkos Introduction,
by Michael A. Heroux and Roger Pawlowski.