2015
DOI: 10.1007/978-3-662-48096-0_3
|View full text |Cite
|
Sign up to set email alerts
|

MPI Thread-Level Checking for MPI+OpenMP Applications

Abstract: International audienceMPI 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 f… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
6
0

Year Published

2016
2016
2019
2019

Publication Types

Select...
2
1

Relationship

1
2

Authors

Journals

citations
Cited by 3 publications
(6 citation statements)
references
References 17 publications
0
6
0
Order By: Relevance
“…These variations include testing tools or detection for a specific type of errors or a different type of errors. Some studies focus on using static testing techniques [25][26][27][28] to detect errors by analyzing the source code and find real as well as potential run-time errors [29,30]; dynamic testing techniques [31,32] to detect errors after execution and at run-time; or hybrid testing techniques [33][34][35]. Also, detecting errors in programming models also varied from the testing tool for single level programming model to the tri-level programming model.…”
Section: Related Workmentioning
confidence: 99%
“…These variations include testing tools or detection for a specific type of errors or a different type of errors. Some studies focus on using static testing techniques [25][26][27][28] to detect errors by analyzing the source code and find real as well as potential run-time errors [29,30]; dynamic testing techniques [31,32] to detect errors after execution and at run-time; or hybrid testing techniques [33][34][35]. Also, detecting errors in programming models also varied from the testing tool for single level programming model to the tri-level programming model.…”
Section: Related Workmentioning
confidence: 99%
“…If deadlocks are about to occur at runtime, the program is stopped and PARCOACH returns error messages with compilation information. This section describes the following new features of PARCOACH: (i) detection of the minimal MPI thread-level support required by an MPI+OpenMP application (see [9] for more details) and (ii) checking misuse of MPI blocking and nonblocking collectives in a multi-threaded context (extension of [10]). …”
Section: Parcoach Static and Dynamic Analyses For Hybrid Applicationsmentioning
confidence: 99%
“…Then, with a depth-first search traversal, we associate a parallelism word to each node. As defined in [9], a parallelism word is the sequence of OpenMP parallel constructs (P:parallel, S:single, M:master and B:barrier for implicit and explicit barriers) surrounding a node from the beginning of the function to the node. The analysis detects CFG nodes containing MPI calls associated to parallelism words defining a multithreaded context and forbidden concurrent calls.…”
Section: Mpi Thread-level Checkingmentioning
confidence: 99%
See 2 more Smart Citations