Return
Logically Parallel Communication for Fast MPI plus Threads Applications
DOI:10.1109/TPDS.2021.3075157.png)
Abstract
En 中文
Supercomputing applications are increasingly adopting the MPI+threads programming model over the traditional MPI everywhere approach to better handle the disproportionate increase in the number of cores compared with other on-node resources. In practice, however, most applications observe a slower performance with MPI+threads primarily because of poor communication performance. Recent research efforts on MPI libraries address this bottleneck by mapping logically parallel communication, that is, operations that are not subject to MPI's ordering constraints to the underlying network parallelism. Domain scientists, however, typically do not expose such communication independence information because the existing MPI-3.1 standard's semantics can be limiting. Researchers had initially proposed user-visible endpoints to combat this issue, but such a solution requires intrusive changes to the standard (new APIs). The upcoming MPI-4.0 standard, on the other hand, allows applications to relax unneeded semantics and provides them with many opportunities to express logical communication parallelism. In this article, we show how MPI+threads applications can achieve high performance with logically parallel communication. Through application case studies, we compare the capabilities of the new MPI-4.0 standard with those of the existing one and user-visible endpoints (upper bound). Logical communication parallelism can boost the overall performance of an application by over 2x.
Keywords:
Parallel processing
Libraries
Programming
Standards
Semantics
Boilers
Upper bound
MPI plus threads
MPI plus OpenMP
exascale MPI
MPI_THREAD_MULTIPLE
MPI endpoints
Uintah
HYPRE
wombat
Legion
AI Summary
Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.
Journal
IF:
6
Papers:
5.2K
Citations:
1.1W

