MPI runtime error detection with MUST: Advances in deadlock detection

Tobias Hilbrich, Joachim Protze, Martin Schulz, Bronis R. De Supinski, Matthias S. Müller

Research output: Contribution to journalArticlepeer-review

13 Scopus citations

Abstract

The widely used Message Passing Interface (MPI) is complex and rich. As a result, application developers require automated tools to avoid and to detect MPI programming errors. We present the Marmot Umpire Scalable Tool (MUST) that detects such errors with significantly increased scalability. We present improvements to our graph-based deadlock detection approach for MPI, which cover future MPI extensions. Our enhancements also check complex MPI constructs that no previous graph-based detection approach handled correctly. Finally, we present optimizations for the processing of MPI operations that reduce runtime deadlock detection overheads. Existing approaches often require (p) analysis time per MPI operation, for p processes. We empirically observe that our improvements lead to sub-linear or better analysis time per operation for a wide range of real world applications.

Original languageEnglish
Pages (from-to)109-121
Number of pages13
JournalScientific Programming
Volume21
Issue number3-4
DOIs
StatePublished - 2013
Externally publishedYes

Keywords

  • Deadlock detection
  • correctness checking
  • message passing interface

Fingerprint

Dive into the research topics of 'MPI runtime error detection with MUST: Advances in deadlock detection'. Together they form a unique fingerprint.

Cite this