Coupling Static and Dynamic MPI Correctness Tools to Optimize Accuracy and Overhead
The complexity of MPI programming led to the development of various correctness tools. Static tools may examine the entire source but yield false positives as they lack runtime context. Dynamic tools, detecting errors at runtime, offer higher precision but suffer from false negatives due to limited coverage and substantial overhead due to instrumentation requirements. This paper presents a coupled workflow that combines these approaches. Forwarding static tool reports to dynamic tools improves the overall accuracy and reduces the instrumentation overhead. A proposed generic exchange format enables interoperability between static and dynamic tools. The coupled workflow is tested through the integration of the tools CoVer, SPMD IR, and MUST for detecting MPI local data races. It eliminates static tool false positives, enables detection of previously missed races in dynamic tools, and reduces the runtime overhead through selective instrumentation up to an order of magnitude.
Authors
- Matthias Mueller (ORCID: https://orcid.org/0000-0003-2545-5258)
- Christian Bischof (ORCID: https://orcid.org/0000-0003-2711-3032)
- Simon Schwitanski (ORCID: https://orcid.org/0000-0001-7121-7205)
- Semih Burak (ORCID: https://orcid.org/0000-0001-6048-9643)
- Yussur Mustafa Oraji (ORCID: https://orcid.org/0009-0004-9922-3112)
Institutions
- Technische Universität Darmstadt (DE)
- RWTH Aachen University (DE)
Publication Details
- Published
- 2025-11-07
- DOI
- https://doi.org/10.1145/3731599.3767360
- Citations
- 1
- Primary Topic
- Parallel Computing and Optimization Techniques
- Type
- article
- Field-Weighted Citation Impact
- 2.27