MPI Errors Detection using GNN Embedding and Vector Embedding over LLVM IR

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Karchi, Jad El, Chen, Hanze, TehraniJamsaz, Ali, Jannesari, Ali, Popov, Mihail, Saillard, Emmanuelle
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866911789174751232
author Karchi, Jad El
Chen, Hanze
TehraniJamsaz, Ali
Jannesari, Ali
Popov, Mihail
Saillard, Emmanuelle
author_facet Karchi, Jad El
Chen, Hanze
TehraniJamsaz, Ali
Jannesari, Ali
Popov, Mihail
Saillard, Emmanuelle
contents Identifying errors in parallel MPI programs is a challenging task. Despite the growing number of verification tools, debugging parallel programs remains a significant challenge. This paper is the first to utilize embedding and deep learning graph neural networks (GNNs) to tackle the issue of identifying bugs in MPI programs. Specifically, we have designed and developed two models that can determine, from a code's LLVM Intermediate Representation (IR), whether the code is correct or contains a known MPI error. We tested our models using two dedicated MPI benchmark suites for verification: MBI and MPI-CorrBench. By training and validating our models on the same benchmark suite, we achieved a prediction accuracy of 92% in detecting error types. Additionally, we trained and evaluated our models on distinct benchmark suites (e.g., transitioning from MBI to MPI-CorrBench) and achieved a promising accuracy of over 80%. Finally, we investigated the interaction between different MPI errors and quantified our models' generalization capabilities over new unseen errors. This involved removing error types during training and assessing whether our models could still predict them. The detection accuracy of removed errors varies significantly between 20% to 80%, indicating connected error patterns.
format Preprint
id arxiv_https___arxiv_org_abs_2403_02518
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle MPI Errors Detection using GNN Embedding and Vector Embedding over LLVM IR
Karchi, Jad El
Chen, Hanze
TehraniJamsaz, Ali
Jannesari, Ali
Popov, Mihail
Saillard, Emmanuelle
Distributed, Parallel, and Cluster Computing
Software Engineering
Identifying errors in parallel MPI programs is a challenging task. Despite the growing number of verification tools, debugging parallel programs remains a significant challenge. This paper is the first to utilize embedding and deep learning graph neural networks (GNNs) to tackle the issue of identifying bugs in MPI programs. Specifically, we have designed and developed two models that can determine, from a code's LLVM Intermediate Representation (IR), whether the code is correct or contains a known MPI error. We tested our models using two dedicated MPI benchmark suites for verification: MBI and MPI-CorrBench. By training and validating our models on the same benchmark suite, we achieved a prediction accuracy of 92% in detecting error types. Additionally, we trained and evaluated our models on distinct benchmark suites (e.g., transitioning from MBI to MPI-CorrBench) and achieved a promising accuracy of over 80%. Finally, we investigated the interaction between different MPI errors and quantified our models' generalization capabilities over new unseen errors. This involved removing error types during training and assessing whether our models could still predict them. The detection accuracy of removed errors varies significantly between 20% to 80%, indicating connected error patterns.
title MPI Errors Detection using GNN Embedding and Vector Embedding over LLVM IR
topic Distributed, Parallel, and Cluster Computing
Software Engineering
url https://arxiv.org/abs/2403.02518