25798

iGUARD: In-GPU Advanced Race Detection

Aditya K Kamath, Arkaprava Basu
Indian Institute of Science, Bengaluru, India
28th ACM Symposium on Operating Systems Principles, 2021

@inproceedings{kamath2021iguard,

   title={iGUARD: In-GPU Advanced Race Detection},

   author={Kamath, Aditya K and Basu, Arkaprava},

   booktitle={Proceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles CD-ROM},

   pages={49–65},

   year={2021}

}

Newer use cases of GPU (Graphics Processing Unit) computing, e.g., graph analytics, look less like traditional bulksynchronous GPU programs. To cater to the needs of emerging applications with semantically richer and finer grain sharing patterns, GPU vendors have been introducing advanced programming features, e.g., scoped synchronization and independent thread scheduling. While these features can speed up many applications and enable newer use cases, they can also introduce subtle synchronization errors if used incorrectly. We present iGUARD, a runtime software tool to detect races in GPU programs due to incorrect use of such advanced features. A key need for a race detector to be practical is to accurately detect races at reasonable overheads. We thus perform the race detection on the GPU itself without relying on the CPU. The GPU’s parallelism helps speed up race detection by 15x over a closely related prior work. Importantly, iGUARD detects newer types of races that were hitherto not possible for any known tool. It detected previously unknown subtle bugs in popular GPU programs, including three in NVIDIA supported commercial libraries. In total, iGUARD detected 57 races in 21 GPU programs, without false positives.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: