SuperCollider: Scalable and Effective Data Race Detection for CUDA
Mark Stephenson, Sana Damani, Mohamed Tarek Ibn Ziad, Anis Ladram, Michael Garland
摘要
Data races, which occur when two or more threads incorrectly access the same memory location without appropriate synchronization, cause CUDA programmers considerable pain. Even experts struggle to reason about extreme parallelism, multiple memory spaces and scopes, and diverse synchronization mechanisms. Races can manifest as subtle data corruption, deadlock, or livelock, which are difficult to reproduce in a debugging environment. To date, there is no generally reliable tool for identifying races in GPU programs at scale. State-of-the-art dynamic GPU race detectors attempt to detect data races by faithfully tracking the memory operations, barriers, and memory fences executed by tens of thousands of threads. While this complexity enables the detection of subtle races, it comes with a cost: existing tools incur substantial memoryfootprint overheads (e.g., greater than 9×) and/or runtime overheads (e.g., 1000×), and tend to report false positives. This paper introduces SuperCollider, a simple race detector for CUDA that tracks only threadlevel state, is agnostic to synchronization protocols, introduces no memory-footprint overhead, seamlessly handles shared, global, and tensor memory spaces, does not produce false positives, and is relatively fast. Although SuperCollider cannot detect all races, we demonstrate that it effectively catches many data races in professionally authored CUDA programs, including races that prior art cannot. Our approach exposed over 90 data races across libraries and CUDA benchmarks, and even found a race in the CUDA Programming Guide. Unlike prior art, SuperCollider can operate at the extreme scales required by modern GPU workloads.
问问这篇 Paper
问问你的智能体。
Lune 读过与它相关的顶会 Paper,每个回答都会注明依据哪几篇。
相关 Paper
- iGUARD: In-GPU Advanced Race DetectionAditya K. Kamath, Arkaprava BasuSOSP 2021 · 被引用 11 次
- HiRace: Accurate and Fast Data Race Checking for GPU ProgramsJohn Jacobson, Martin Burtscher, Ganesh GopalakrishnanSC 2024 · 被引用 3 次
- Sound and Partially-Complete Static Analysis of Data-Races in GPU ProgramsDennis Liew, Tiago Cogumbreiro, Julien LangeOOPSLA 2024 · 被引用 10 次
- ScoRD: A Scoped Race Detector for GPUsAditya K. Kamath, Alvin A. George, Arkaprava BasuISCA 2020 · 被引用 12 次
- sfGPUMC: A Stateless Model Checker for GPU Weak Memory ConcurrencySoham Chakraborty, S. Krishna, Andreas Pavlogiannis, Omkar TuppeCAV 2025 · 被引用 2 次
