LD: Low-Overhead GPU Race Detection Without Access Monitoring
LD: Low-Overhead GPU Race Detection Without Access Monitoring
复制标题
LD:无需访问监控的低开销 GPU 竞争检测
DOI:
10.1145/3046678
复制
发表时间:
2017
影响因子:
1.6
通讯作者:
Ding, Chen
中科院分区:
文献类型:
--
作者:
Li, Pengcheng;Hu, Xiaoyu;Chen, Dong;Brock, Jacob;Luo, Hao;Zhang, Eddy Z.;Ding, Chen
Data race detection has become an important problem in GPU programming. Previous designs of CPU race-checking tools are mainly task parallel and incur high overhead on GPUs due to access instrumentation, especially when monitoring many thousands of threads routinely used by GPU programs.This article presents a novel data-parallel solution designed and optimized for the GPU architecture. It includes compiler support and a set of runtime techniques. It uses value-based checking, which detects the races reported in previous work, finds new races, and supports race-free deterministic GPU execution. More important, race checking is massively data parallel and does not introduce divergent branching or atomic synchronization. Its slowdown is less than 5 × for over half of the tests and 10 × on average, which is orders of magnitude more efficient than the cuda-memcheck tool by Nvidia and the methods that use fine-grained access instrumentation.