MPI Thread-Level Checking for MPI+OpenMP Applications

Abstract : MPI is the most widely used parallel programming model. But the reducing amount of memory per compute core tends to push MPI to be mixed with shared-memory approaches like OpenMP. In such cases, the interoperability of those two models is challenging. The MPI 2.0 standard defines the so-called thread level to indicate how MPI will interact with threads. But even if hybrid programs are more common, there is still a lack in debugging tools and more precisely in thread level compliance. To fill this gap, we propose a static analysis to verify the thread-level required by an application. This work extends PARCOACH, a GCC plugin focused on the detection of MPI collective errors in MPI and MPI+OpenMP programs. We validated our analysis on computational benchmarks and applications and measured a low overhead.
Complete list of metadatas

Cited literature [19 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-01199718
Contributor : Emmanuelle Saillard <>
Submitted on : Tuesday, September 15, 2015 - 11:04:09 PM
Last modification on : Tuesday, May 14, 2019 - 11:38:11 AM
Long-term archiving on : Tuesday, December 29, 2015 - 7:24:11 AM

File

parcoach_EuroPar_camera_ready....
Files produced by the author(s)

Identifiers

Collections

Citation

Emmanuelle Saillard, Patrick Carribault, Denis Barthou. MPI Thread-Level Checking for MPI+OpenMP Applications. Euro-Par 2015, Aug 2015, Vienne, Austria. pp.31-42, ⟨10.1007/978-3-662-48096-0_3⟩. ⟨hal-01199718⟩

Share

Metrics

Record views

274

Files downloads

411