Static/Dynamic Validation of MPI Collective Communications in Multi-threaded Context

Abstract : Scientific applications mainly rely on the MPI parallel programming model to reach high performance on supercomputers. The advent of manycore architectures (larger number of cores and lower amount of memory per core) leads to mix MPI with a thread-based model like OpenMP. But integrating two different programming models inside the same application can be tricky and generate complex bugs. Thus, the correctness of hybrid programs requires a special care regarding MPI calls location. For example, identical MPI collective operations cannot be performed by multiple non-synchronized threads. To tackle this issue, this paper proposes a static analysis and a reduced dynamic instrumentation to detect bugs related to misuse of MPI collective operations inside or outside threaded regions. This work extends PARCOACH [4] designed for MPI-only applications and keeps the compatibility with these algorithms. We validated our method on multiple hybrid benchmarks and applications with a low overhead.
Complete list of metadatas

Cited literature [4 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-01253204
Contributor : Emmanuelle Saillard <>
Submitted on : Monday, January 11, 2016 - 4:59:46 PM
Last modification on : Tuesday, May 14, 2019 - 11:38:11 AM
Long-term archiving on : Tuesday, April 12, 2016 - 11:01:18 AM

File

parcoach_HAL.pdf
Files produced by the author(s)

Identifiers

Collections

Citation

Emmanuelle Saillard, Patrick Carribault Cea, Denis Barthou. Static/Dynamic Validation of MPI Collective Communications in Multi-threaded Context. the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, Feb 2015, San Francisco, United States. pp.279-280, ⟨10.1145/2688500.2688548⟩. ⟨hal-01253204⟩

Share

Metrics

Record views

130

Files downloads

207