Software Package for Reporting Errors in Distributed MPI Applications
The result's identifiers
Result code in IS VaVaI
<a href="https://www.isvavai.cz/riv?ss=detail&h=RIV%2F00216305%3A26230%2F24%3APR38812" target="_blank" >RIV/00216305:26230/24:PR38812 - isvavai.cz</a>
Result on the web
<a href="https://github.com/jarosjir/MPIErrorChecker" target="_blank" >https://github.com/jarosjir/MPIErrorChecker</a>
DOI - Digital Object Identifier
—
Alternative languages
Result language
angličtina
Original language name
Software Package for Reporting Errors in Distributed MPI Applications
Original language description
Managing error states in C++ applications is accomplished through exceptions. In distributed applications, it becomes essential to communicate to other processes when an error occurs, giving the application the option to either recover from the faulty state or gracefully report the error and terminate. Regrettably, the MPI standard does not offer any built-in mechanisms for handling errors in a distributed environment. This software presents a new approach for exceptions handling in MPI applications. The goals are to (1) report any faulty state to the user in a nicely formatted way by just a single rank, (2) ensure the application will never deadlock, (3) propose a simple interface and ensure interoperability with other C/C++ libraries. The proposed method adopts a minimalistic interface and offers several advantages. No dedicated rank error handling is required, a single reduce operation is sufficient to confirm the application passed through a checkpoint, deadlock in application cannot interrupt the error handling, and the application always terminates gracefully with an appropriate error message. The code under went testing with various MPI implementations across a range of up to 1536 ranks. External libraries, specifically the distributed versions of the Fast Fourier Transform (FFTW) and the HDF5 I/O libraries, were selected for their extensive use of collective communications. The testing involved introducing several injected errors into multiple ranks, such as a non-existing input file, disk quota exceeded, incorrect rank in the MPI call, and standard system exceptions. Remarkably, the code demonstrated proper functionality in all tested scenarios.
Czech name
—
Czech description
—
Classification
Type
R - Software
CEP classification
—
OECD FORD branch
20206 - Computer hardware and architecture
Result continuities
Project
—
Continuities
R - Projekt Ramcoveho programu EK
Others
Publication year
2024
Confidentiality
S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů
Data specific for result type
Internal product ID
MPI Error Checker
Technical parameters
Zdrojové kódy jsou ke stažení na GitHubu https://github.com/jarosjir/MPIErrorChecker Pro informace o licenčních podmínkách prosím kontaktujte: Ing. Kristýna Dvořáčkova, MSc., Výzkumné centrum informačních technologií, Fakulta informačních technologií VUT v Brně, Božetěchova 2, 612 00 Brno, tel. 541 141 466.
Economical parameters
Produkt se poskytuje zdarma na základě uvedené licenční LGPL smlouvy.
Owner IČO
00216305
Owner name
Vysoké učení technické v Brně