Workshop: LLVM-HPC2025: The 11th Workshop on the LLVM Compiler Infrastructure in HPC
Authors: Andrew Osterhout (University of Utah), Ignacio Laguna (Lawrence Livermore National Laboratory (LLNL)), and Ganesh Gopalakrishnan (University of Utah)
Abstract: Data Races are bugs whose occurrence in shared memory parallel and concurrent systems can cause unexpected outcomes and undermine the integrity of computational results. CPU/GPU systems that use Unified Heterogeneous Memory—for simplified memory sharing between GPUs and CPUs—are highly prone to data races. Scabbard's design is based on instrumenting the CPU/GPU codes by using LLVM's pass-plugin system to instrument the user's code to record writes, reads and synchronizations into trace files during execution, and subsequently performing offline analysis to report races. The main contribution of this paper is in detailing our algorithms, implementation challenges and the learning process faced by newcomers to the LLVM and ROCm/Hip ecosystems to better the learning experience for new LLVM tool-builders in the CPU/GPU space.
Back to LLVM-HPC2025: The 11th Workshop on the LLVM Compiler Infrastructure in HPC Archive Listing Back to Full Workshop Archive Listing