Skip to Main content Skip to Navigation
Journal articles

PARCOACH: Combining static and dynamic validation of MPI collective communications

Emmanuelle Saillard 1 Patrick Carribault 1 Denis Barthou 2, 3
2 RUNTIME - Efficient runtime systems for parallel architectures
Inria Bordeaux - Sud-Ouest, UB - Université de Bordeaux, CNRS - Centre National de la Recherche Scientifique : UMR5800
Abstract : Nowadays most scientific applications are parallelized based on MPI communications. Collective MPI communications have to be executed in the same order by all processes in their communicator and the same number of times, otherwise it is not conforming to the standard and a deadlock or other undefined behavior can occur. As soon as the control-flow involving these collective operations becomes more complex, in particular including conditionals on process ranks, ensuring the correction of such code is error-prone. We propose in this paper a static analysis to detect when such situation occurs, combined with a code transformation that prevents from deadlocking. We focus on blocking MPI collective operations in SPMD applications, assuming MPI calls are not nested in multithreaded regions. We show on several benchmarks the small impact on performance and the ease of integration of our techniques in the development process.
Complete list of metadatas

Cited literature [20 references]  Display  Hide  Download
Contributor : Emmanuelle Saillard <>
Submitted on : Thursday, October 30, 2014 - 10:56:22 AM
Last modification on : Tuesday, May 14, 2019 - 11:38:11 AM
Long-term archiving on: : Monday, February 2, 2015 - 3:53:23 PM


Files produced by the author(s)




Emmanuelle Saillard, Patrick Carribault, Denis Barthou. PARCOACH: Combining static and dynamic validation of MPI collective communications. International Journal of High Performance Computing Applications, SAGE Publications, 2014, pp.10.1177/1094342014552204. ⟨10.1177/1094342014552204⟩. ⟨hal-01078762⟩



Record views


Files downloads