학술논문

Distributed wait state tracking for runtime MPI deadlock detection
Document Type
Conference
Source
2013 SC - International Conference for High Performance Computing, Networking, Storage and Analysis (SC) High Performance Computing, Networking, Storage and Analysis (SC), 2013 International Conference for. :1-12 Nov, 2013
Subject
Computing and Processing
System recovery
Runtime
Distributed algorithms
Semantics
Scalability
Standards
Algorithm design and analysis
Language
ISSN
2167-4329
2167-4337
Abstract
The widely used Message Passing Interface (MPI) with its multitude of communication functions is prone to usage errors. Runtime error detection tools aid in the removal of these errors. We develop MUST as one such tool that provides a wide variety of automatic correctness checks. Its correctness checks can be run in a distributed mode, except for its deadlock detection. This limitation applies to a wide range of tools that either use centralized detection algorithms or a timeout approach. In order to provide scalable and distributed deadlock detection with detailed insight into deadlock situations, we propose a model for MPI blocking conditions that we use to formulate a distributed algorithm. This algorithm implements scalable MPI deadlock detection in MUST. Stress tests at up to 4,096 processes demonstrate the scalability of our approach. Finally, overhead results for a complex benchmark suite demonstrate an average runtime increase of 34% at 2,048 processes.