TY - GEN
T1 - Review of MPI Continuations and Their Integration into PMPI Tools
AU - Optenhöfel, Alexander
AU - Jenke, Joachim
AU - Thärigen, Ben
AU - Schuchart, Joseph
N1 - Publisher Copyright:
© The Author(s), under exclusive license to Springer Nature Switzerland AG 2026.
PY - 2026
Y1 - 2026
N2 - Nonblocking communication in MPI significantly enhances high-performance computing by minimizing application time spent in MPI communication functions, enabling the overlap of computation and communication. Asynchronous programming models further enhance efficiency and adaptability in load balancing; however, the integration of MPI communication with these models remains insufficient. The MPI Continuations proposal, currently under discussion in the MPI Forum, aims to resolve the latter by introducing asynchronous completion for nonblocking communication. To ensure application developers can adopt this transformative feature, robust support in PMPI-based tools is essential. We have updated an early prototype to implement the latest discussion state from the MPI Forum. This shim library implementation of MPI Continuations is compatible with any MPI implementation. We describe potential pitfalls in implementing continuations, including a significant API issue that could lead to race conditions. We propose restrictions to prevent these issues and strengthen the robustness of the MPI Continuations proposal. Additionally, our analysis highlights the challenges PMPI-based tools will face with the new control flow, as MPI operations may now complete at nearly any point in a program. MPI progress threads and progress engines might become visible, requiring closer attention. Tools need to adapt by intercepting user-provided callback functions to monitor the completion of nonblocking communication effectively. Using the PMPI-based On-the-Fly Critical Path Tool used for performance analysis as an example, we demonstrate a clear path for integrating MPI Continuations into performance analysis tools, enhancing overall performance and adaptability in advanced computing applications.
AB - Nonblocking communication in MPI significantly enhances high-performance computing by minimizing application time spent in MPI communication functions, enabling the overlap of computation and communication. Asynchronous programming models further enhance efficiency and adaptability in load balancing; however, the integration of MPI communication with these models remains insufficient. The MPI Continuations proposal, currently under discussion in the MPI Forum, aims to resolve the latter by introducing asynchronous completion for nonblocking communication. To ensure application developers can adopt this transformative feature, robust support in PMPI-based tools is essential. We have updated an early prototype to implement the latest discussion state from the MPI Forum. This shim library implementation of MPI Continuations is compatible with any MPI implementation. We describe potential pitfalls in implementing continuations, including a significant API issue that could lead to race conditions. We propose restrictions to prevent these issues and strengthen the robustness of the MPI Continuations proposal. Additionally, our analysis highlights the challenges PMPI-based tools will face with the new control flow, as MPI operations may now complete at nearly any point in a program. MPI progress threads and progress engines might become visible, requiring closer attention. Tools need to adapt by intercepting user-provided callback functions to monitor the completion of nonblocking communication effectively. Using the PMPI-based On-the-Fly Critical Path Tool used for performance analysis as an example, we demonstrate a clear path for integrating MPI Continuations into performance analysis tools, enhancing overall performance and adaptability in advanced computing applications.
UR - https://www.scopus.com/pages/publications/105020382440
U2 - 10.1007/978-3-032-07194-1_5
DO - 10.1007/978-3-032-07194-1_5
M3 - Conference contribution
AN - SCOPUS:105020382440
SN - 9783032071934
T3 - Lecture Notes in Computer Science
SP - 73
EP - 88
BT - Recent Advances in the Message Passing Interface - 32nd European MPI Users' Group Meeting, EuroMPI 2025, Proceedings
A2 - Schuchart, Joseph
A2 - Bouteiller, Aurelien
A2 - Hunold, Sascha
A2 - Jaeger, Julien
A2 - Niethammer, Christoph
A2 - Smith, Brian
PB - Springer Science and Business Media Deutschland GmbH
T2 - 32nd European MPI Users Group Meeting, EuroMPI 2025
Y2 - 1 October 2025 through 3 October 2025
ER -