29541

Kokkidio: Fast, expressive, portable code, based on Kokkos and Eigen

Lennart Steffen, Reinhard Hinkelmann
Chair of Water Resources Management and Modeling of Hydrosystems, Technische Universität Berlin, Berlin, Germany
SSRN, 2024

@article{steffen2024kokkidio,

   title={Kokkidio: Fast, expressive, portable code, based on Kokkos and Eigen},

   author={Steffen, Lennart and Hinkelmann, Reinhard},

   journal={Expressive, Portable Code, Based on Kokkos and Eigen},

   year={2024}

}

Kokkidio is a newly developed C++ template library that combines the performance portability framework Kokkos and its strength in utilising GPUs with the expressive syntax and CPU optimisations of the linear algebra library Eigen. Its unified abstractions enable both simple data management as well as clear, succinct compute code in kernel functors, where a novel iteration/functor parameter performs target-specific grouping of operations. This preserves Eigen’s loop abstractions, enabling explicit vectorisation of host code. A comprehensive evaluation across GPUs and CPUs by all major vendors shows Kokkidio providing significantly improved performance portability over Kokkos. With the fraction of best observed runtime as the efficiency metric, Kokkidio achieves a near-optimal harmonic mean of 0.95, compared to Kokkos’ 0.59 across all microbenchmarks and tested hardware, effectively merging Kokkos’ GPU and Eigen’s CPU performance into one framework.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2024 hgpu.org

All rights belong to the respective authors

Contact us: