TU Darmstadt / ULB / TUbiblio

Compiler-aided type tracking for correctness checking of MPI applications

Hück, Alexander and Lehr, Jan-Patrick and Kreutzer, Sebastian and Protze, Joachim and Terboven, Christian and Bischof, Christian and Müller, Matthias S. (2018):
Compiler-aided type tracking for correctness checking of MPI applications.
In: 2nd International Workshop on Software Correctness for HPC Applications (Correctness), Dallas, TX, USA, 11.-16. Nov. 2018, pp. 51-58, DOI: 10.1109/Correctness.2018.00011,
[Conference or Workshop Item]

This is the latest version of this item.

Abstract

MUST, a dynamic MPI correctness checker, is extended with a type and memory allocation tracking sanitizer called TypeART for C/C++ codes based on the LLVM compiler framework. The sanitizer extracts type information and inserts instrumentation to track memory allocations and deallocations relevant to MPI communication. This allows MUST to check for type compatibility between the type-less communication buffer and the declared MPI datatype at all phases of the MPI communication, namely message assembly, message transfer and message disassembly into the receiving buffer. We evaluate our approach on benchmarks taken from SPEC MPI 2007 and two CORAL mini applications. The results show that our approach typically exhibits acceptable runtime and memory overheads. In particular, the memory overhead was below 20% in all cases.

Item Type: Conference or Workshop Item
Erschienen: 2018
Creators: Hück, Alexander and Lehr, Jan-Patrick and Kreutzer, Sebastian and Protze, Joachim and Terboven, Christian and Bischof, Christian and Müller, Matthias S.
Title: Compiler-aided type tracking for correctness checking of MPI applications
Language: English
Abstract:

MUST, a dynamic MPI correctness checker, is extended with a type and memory allocation tracking sanitizer called TypeART for C/C++ codes based on the LLVM compiler framework. The sanitizer extracts type information and inserts instrumentation to track memory allocations and deallocations relevant to MPI communication. This allows MUST to check for type compatibility between the type-less communication buffer and the declared MPI datatype at all phases of the MPI communication, namely message assembly, message transfer and message disassembly into the receiving buffer. We evaluate our approach on benchmarks taken from SPEC MPI 2007 and two CORAL mini applications. The results show that our approach typically exhibits acceptable runtime and memory overheads. In particular, the memory overhead was below 20% in all cases.

Uncontrolled Keywords: MPI, correctness, type mismatch, sanitizer
Divisions: 20 Department of Computer Science
20 Department of Computer Science > Scientific Computing
Exzellenzinitiative
Exzellenzinitiative > Graduate Schools
Exzellenzinitiative > Graduate Schools > Graduate School of Computational Engineering (CE)
Zentrale Einrichtungen
Zentrale Einrichtungen > University IT-Service and Computing Centre (HRZ)
Zentrale Einrichtungen > University IT-Service and Computing Centre (HRZ) > Hochleistungsrechner
Event Title: 2nd International Workshop on Software Correctness for HPC Applications (Correctness)
Event Location: Dallas, TX, USA
Event Dates: 11.-16. Nov. 2018
Date Deposited: 13 Nov 2019 13:33
DOI: 10.1109/Correctness.2018.00011
Export:
Suche nach Titel in: TUfind oder in Google

Available Versions of this Item

  • Compiler-aided type tracking for correctness checking of MPI applications. (deposited 13 Nov 2019 13:33) [Currently Displayed]
Send an inquiry Send an inquiry

Options (only for editors)

View Item View Item