Committee Chair

Skjellum, Anthony

Committee Member

Dumas, Joseph; Ward, Michael

Department

Dept. of Computer Science and Engineering

College

College of Engineering and Computer Science

Publisher

University of Tennessee at Chattanooga

Place of Publication

Chattanooga (Tenn.)

Abstract

Kokkos provides in-memory advanced data structures, concurrency, and algorithm to support advanced C++ parallel programming. MPI provides the most widely used message passing model for inter-node communication. Many programmers use both Kokkos and the Message Passing Interface (MPI) together. In this thesis, Kokkos is integrated within an MPI implementation to obtain performance and functionality benefits both for the MPI itself, and for applications that use both Kokkos+MPI. For instance, it will be possible in this model to pass first-class Kokkos objects directly to extended C++-based MPI APIs. In particular, efforts to achieve this type of integrated model is expressed using ExaMPI, a C++17-based subset implementation of MPI-4 developed at UTC with collaborators. Working with C++-friendly APIs, and Kokkos extensions, examples of the benefits of functionality and performance are shown. We explain why direct use of Kokkos within the certain parts of the MPI implementation are crucial to getting added performance in addition to expressivity. We also motivate why making Kokkos memory spaces visible to the MPI implementation generalizes the idea of “CPU memory” and “GPU memory” in ways that provide for further optimizations in heterogeneous Exascale architectures. Besides showing the current state of the prototype, we describe future goals, and show how these mesh both with a possible future C++ API for MPI-5 as well as the potential for accelerating MPI on architectures that incorporate accelerators.

Acknowledgments

Thanks to Riley Shipley and Derek Schafer for reviewing this thesis, along with the ExaMPI team and the Kokkos team for technical support. Additional thanks to the thesis committee, Dr. Anthony Skjellum, Dr. Joseph Dumas II, and Dr. Michael Ward. Funding provided with NSF Grants: #1821431, 1822191, 1918987, 1925603, 2201497.

Degree

M. S.; A thesis submitted to the faculty of the University of Tennessee at Chattanooga in partial fulfillment of the requirements of the degree of Master of Science.

Date

8-2023

Subject

High performance computing--Research; Computer architecture; C++ (Computer program language); Application program interfaces (Computer software)

Keyword

Kokkos;MPI;High-Performance Computing;

Document Type

Masters theses

DCMI Type

Text

Extent

x, 76 leaves

Language

English

Rights

http://rightsstatements.org/vocab/InC/1.0/

License

http://creativecommons.org/licenses/by-nc-nd/4.0/

Share

COinS