You are here:
Publication details
Precise Predictive Analysis for Discovering Communication Deadlocks in MPI Programs
Authors | |
---|---|
Year of publication | 2014 |
Type | Article in Proceedings |
Conference | FM 2014: Formal Methods |
MU Faculty or unit | |
Citation | |
Doi | http://dx.doi.org/10.1007/978-3-319-06410-9_19 |
Field | Informatics |
Keywords | MPI; verification; parallel computation |
Description | The Message Passing Interface (MPI) is the standard API for high-performance and scientific computing. Communication deadlocks are a frequent problem in MPI programs, and this paper addresses the problem of discovering such deadlocks. We begin by showing that if an MPI program is single-path, the problem of discovering communication deadlocks is NP-complete. We then present a novel propositional encoding scheme which captures the existence of communication deadlocks. The encoding is based on modelling executions with partial orders, and implemented in a tool called MOPPER. The tool executes an MPI program, collects the trace, builds a formula from the trace using the propositional encoding scheme, and checks its satisfiability. Finally, we present experimental results that quantify the benefit of the approach in comparison to a dynamic analyser and demonstrate that it offers a scalable solution. |
Related projects: |