ePrints@IIScePrints@IISc Home | About | Browse | Latest Additions | Advanced Search | Contact | Help

IGUARD: In-GPU Advanced Race Detection

Kamath, AK and Basu, A (2021) IGUARD: In-GPU Advanced Race Detection. In: 28th ACM Symposium on Operating Systems Principles, SOSP 2021, 26-29 Oct 2021, pp. 49-65.

[img] PDF
SOSP_2021.pdf - Published Version
Restricted to Registered users only

Download (1MB) | Request a copy
Official URL: https://doi.org/10.1145/3477132.3483545

Abstract

Newer use cases of GPU (Graphics Processing Unit) computing, e.g., graph analytics, look less like traditional bulk-synchronous 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. © 2021 ACM.

Item Type: Conference Paper
Publication: SOSP 2021 - Proceedings of the 28th ACM Symposium on Operating Systems Principles
Publisher: Association for Computing Machinery, Inc
Additional Information: The copyright for this article belongs to Association for Computing Machinery, Inc
Keywords: Computer graphics; Computer graphics equipment; Program debugging; Program processors, Data races; Debugging; Emerging applications; Graph-analytic; Graphic processing unit program correctness; Graphics processing; Processing units; Program correctness; Race detection; Speed up, Graphics processing unit
Department/Centre: Division of Electrical Sciences > Computer Science & Automation
Date Deposited: 03 Dec 2021 08:47
Last Modified: 03 Dec 2021 08:47
URI: http://eprints.iisc.ac.in/id/eprint/70618

Actions (login required)

View Item View Item