The Kokkos EcoSystem: Comprehensive Performance Portability for High Performance Computing
- 2 August 2021
- journal article
- research article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in Computing in Science & Engineering
- Vol. 23 (5), 10-18
- https://doi.org/10.1109/mcse.2021.3098509
Abstract
State-of-the-art engineering and science codes have grown in complexity dramatically over the last two decades. Application teams have adopted more sophisticated development strategies, leveraging third party libraries, deploying comprehensive testing, and using advanced debugging and profiling tools. In today’s environment of diverse hardware platforms, these applications also desire performance portability—avoiding the need to duplicate work for various platforms. The Kokkos EcoSystem provides that portable software stack. Based on the Kokkos Core Programming Model, the EcoSystem provides math libraries, interoperability capabilities with Python and Fortran, and Tools for analyzing, debugging, and optimizing applications. In this article, we overview the components, discuss some specific use cases, and highlight how codesigning these components enables a more developer friendly experience.Keywords
Funding Information
- Exascale Computing Project (17-SC-20-SC)
- U.S. Department of Energy
- National Nuclear Security Administration
This publication has 5 references indexed in Scilit:
- A performance portability framework for PythonPublished by Association for Computing Machinery (ACM) ,2021
- HOMMEXX 1.0: a performance-portable atmospheric dynamical core for the Energy Exascale Earth System ModelGeoscientific Model Development, 2019
- Designing vector-friendly compact BLAS and LAPACK kernelsPublished by Association for Computing Machinery (ACM) ,2017
- Kokkos: Enabling manycore performance portability through polymorphic memory access patternsJournal of Parallel and Distributed Computing, 2014
- Fast Parallel Algorithms for Short-Range Molecular DynamicsJournal of Computational Physics, 1995