MPIX Stream: An Explicit Solution to Hybrid MPI+X Programming

21Citations
Citations of this article
5Readers
Mendeley users who have this article in their library.
Get full text

Abstract

The hybrid MPI+X programming paradigm, where X refers to threads or GPUs, has gained prominence in the high-performance computing arena. This corresponds to a trend of system architectures growing more heterogeneous. The current MPI standard only specifies the compatibility levels between MPI and threading runtimes. No MPI concept or interface exists for applications to pass thread context or GPU stream context to MPI implementations explicitly. This lack has made performance optimization complicated in some cases and impossible in other cases. We propose a new concept in MPI, called MPIX stream, to represent the general serial execution context that exists in X runtimes. MPIX streams can be directly mapped to threads or GPU execution streams. Passing thread context into MPI allows implementations to precisely map the execution contexts to network endpoints. Passing GPU execution context into MPI allows implementations to directly operate on GPU streams, lowering the CPU/GPU synchronization cost.

Cite

CITATION STYLE

APA

Zhou, H., Raffenetti, K., Guo, Y., & Thakur, R. (2022). MPIX Stream: An Explicit Solution to Hybrid MPI+X Programming. In ACM International Conference Proceeding Series (pp. 1–10). Association for Computing Machinery. https://doi.org/10.1145/3555819.3555820

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free