skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Towards Generic Parallel Programming in Computer Science Education with Kokkos

Conference ·
OSTI ID:1814261

Parallel patterns, views, and spaces are promising abstractions to capture the programmer's intent as well as the contextual information that can be used by an underlying runtime to efficiently map software to parallel hardware. These abstractions can be valuable in cases where an algorithm must accommodate requirements of code and performance portability across hardware architectures and vendor programming models. Kokkos is a parallel programming model for host- and accelerator architectures that relies on these abstractions and targets these requirements. It consists of a pure C++ interface, a specification, and a programming library. The programming library exposes patterns and types and maps them to an underlying abstract machine model. The abstract machine model offers a generic view of parallel hardware. While Kokkos is gaining popularity in large-scale HPC applications at some DOE laboratories, we believe that the implemented concepts are of interest to a broader audience including academia as they may contribute to a generic, vendor, and architecture-independent education of parallel programming. In this work, we give an insight into the design considerations of this programming model and list important abstractions. Further, we document best practices obtained from giving virtual classes on Kokkos and give pointers to resources that the reader may consider valuable for a lecture on generic parallel programming for students with preexisting knowledge on this matter.

Research Organization:
Oak Ridge National Lab. (ORNL), Oak Ridge, TN (United States)
Sponsoring Organization:
USDOE Office of Science (SC)
DOE Contract Number:
AC05-00OR22725
OSTI ID:
1814261
Resource Relation:
Conference: SC20 - The International Conference for High Performance Computing, Networking, Storage, and Analysis - Virtual, Georgia, United States of America - 11/9/2020 10:00:00 AM-11/19/2020 10:00:00 AM
Country of Publication:
United States
Language:
English

Similar Records

The Kokkos Ecosystem [Brief]
Technical Report · Sat Aug 01 00:00:00 EDT 2020 · OSTI ID:1814261

Kokkos: Enabling manycore performance portability through polymorphic memory access patterns
Journal Article · Tue Jul 22 00:00:00 EDT 2014 · Journal of Parallel and Distributed Computing · OSTI ID:1814261

Programming Models in HPC
Technical Report · Mon Jun 13 00:00:00 EDT 2016 · OSTI ID:1814261

Related Subjects