Skip to Main content Skip to Navigation
Conference papers

Automatic Code Motion to Extend MPI Nonblocking Overlap Window

Abstract : HPC applications rely on a distributed-memory parallel programming model to improve the overall execution time. This leads to spawning multiple processes that need to communicate with each other to make the code progress. But these communications involve overheads caused by network latencies or synchronizations between processes. One possible approach to reduce those overheads is to overlap communications with computations. MPI allows this solution through its nonblocking communication mode: a nonblocking communication is composed of an initialization and a completion call. It is then possible to overlap the communication by inserting computations between these two calls. The use of nonblocking collective calls is however still marginal and adds a new layer of complexity. In this paper we propose an automatic static optimization that (i) transforms blocking MPI communications into their nonblocking counterparts and (ii) performs extensive code motion to increase the size of overlapping intervals between initialization and completion calls. Our method is implemented in LLVM as a compilation pass, and shows promising results on two mini applications.
Complete list of metadata

Cited literature [15 references]  Display  Hide  Download
Contributor : Van Man Nguyen Connect in order to contact the contributor
Submitted on : Tuesday, November 17, 2020 - 5:39:11 PM
Last modification on : Sunday, June 26, 2022 - 2:57:28 AM
Long-term archiving on: : Thursday, February 18, 2021 - 8:17:50 PM


Files produced by the author(s)



Van-Man Nguyen, Emmanuelle Saillard, Julien Jaeger, Denis Barthou, Patrick Carribault. Automatic Code Motion to Extend MPI Nonblocking Overlap Window. C3PO'20 Workshop - First Workshop on Compiler-Assisted Correctness Checking and Performance Optimization for HPC, Jun 2020, Frankfurt / Virtual, Germany. pp.43-54, ⟨10.1007/978-3-030-59851-8_4⟩. ⟨cea-03010533⟩



Record views


Files downloads