English

Lessons Learned on MPI+Threads Communication

Distributed, Parallel, and Cluster Computing 2022-06-30 v1

Abstract

Hybrid MPI+threads programming is gaining prominence, but, in practice, applications perform slower with it compared to the MPI everywhere model. The most critical challenge to the parallel efficiency of MPI+threads applications is slow MPI_THREAD_MULTIPLE performance. MPI libraries have recently made significant strides on this front, but to exploit their capabilities, users must expose the communication parallelism in their MPI+threads applications. Recent studies show that MPI 4.0 provides users with new performance-oriented options to do so, but our evaluation of these new mechanisms shows that they pose several challenges. An alternative design is MPI Endpoints. In this paper, we present a comparison of the different designs from the perspective of MPI's end-users: domain scientists and application developers. We evaluate the mechanisms on metrics beyond performance such as usability, scope, and portability. Based on the lessons learned, we make a case for a future direction.

Keywords

Cite

@article{arxiv.2206.14285,
  title  = {Lessons Learned on MPI+Threads Communication},
  author = {Rohit Zambre and Aparna Chandramowlishwaran},
  journal= {arXiv preprint arXiv:2206.14285},
  year   = {2022}
}

Comments

In Proceedings of the International Conference for High-Performance Computing, Networking, Storage and Analysis (SC), Dallas, TX, USA, November 2022

R2 v1 2026-06-24T12:07:34.145Z