@inproceedings{90d956823c49416692838c0cd7a843c2,
title = "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.",
keywords = "MPI, MPI thread level, OpenMP, Static verification",
author = "Emmanuelle Saillard and Patrick Carribault and Denis Barthou",
note = "Publisher Copyright: {\textcopyright} Springer-Verlag Berlin Heidelberg 2015.; 21st International Conference on Parallel and Distributed Computing, Euro-Par 2015 ; Conference date: 24-08-2015 Through 28-08-2015",
year = "2015",
month = jan,
day = "1",
doi = "10.1007/978-3-662-48096-0\_3",
language = "English",
isbn = "9783662480953",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Verlag",
pages = "31--42",
editor = "Traff, \{Jesper Larsson\} and Sascha Hunold and Francesco Versaci",
booktitle = "Euro-Par 2015",
}