Software Package for Reporting Errors in Distributed MPI Applications
Identifikátory výsledku
Kód výsledku v 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>
Výsledek na webu
<a href="https://github.com/jarosjir/MPIErrorChecker" target="_blank" >https://github.com/jarosjir/MPIErrorChecker</a>
DOI - Digital Object Identifier
—
Alternativní jazyky
Jazyk výsledku
angličtina
Název v původním jazyce
Software Package for Reporting Errors in Distributed MPI Applications
Popis výsledku v původním jazyce
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.
Název v anglickém jazyce
Software Package for Reporting Errors in Distributed MPI Applications
Popis výsledku anglicky
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.
Klasifikace
Druh
R - Software
CEP obor
—
OECD FORD obor
20206 - Computer hardware and architecture
Návaznosti výsledku
Projekt
—
Návaznosti
R - Projekt Ramcoveho programu EK
Ostatní
Rok uplatnění
2024
Kód důvěrnosti údajů
S - Úplné a pravdivé údaje o projektu nepodléhají ochraně podle zvláštních právních předpisů
Údaje specifické pro druh výsledku
Interní identifikační kód produktu
MPI Error Checker
Technické parametry
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.
Ekonomické parametry
Produkt se poskytuje zdarma na základě uvedené licenční LGPL smlouvy.
IČO vlastníka výsledku
00216305
Název vlastníka
Vysoké učení technické v Brně