GORC: A Graph Neural Network Based Static Data Race Checker for OpenMP

GORC: A Graph Neural Network Based Static Data Race Checker for OpenMP

Thursday, June 12, 2025 1:25 PM to 1:50 PM · 25 min. (Europe/Berlin)
Hall F - 2nd floor
Research Paper
Compiler and Tools for Parallel ProgrammingIndustrial Use Cases of HPC, ML and QCML Systems and Tools

Information

There is an unmet need for static data race checkers that can analyze incomplete programs typical of early program development stages, and are also easily adapted to different parallel programming models. In this work, we present a novel race-checking approach based on Graph Neural Networks (GNN) called GORC that has these attributes. GORC is trained on PrograML control/data graph representations extracted from OpenMP programs that are labeled as racy or race-free and
helps predict races in unseen OpenMP programs. We provide a detailed evaluation of GORC, demonstrating that our approach can deliver high accuracy while also handling many more programs than existing static race checkers. Despite the scarcity of training data, GORC achieves a higher recall rate than LLOV, a widely cited static race checker for OpenMP. It outperforms state-of-the-art ML-based techniques for OpenMP data race detection on three different data-sets. This paper describes GORC’s architecture, detailed evaluations, and a novel attribution study that confirms that GORC is learning features relevant to producing data race classifications.
Contributors:
Format
On DemandOn Site