Checking Data-Race Freedom of GPU Kernels, Compositionally

被引:7
|
作者
Cogumbreiro, Tiago [1 ]
Lange, Julien [2 ]
Rong, Dennis Liew Zhen [1 ]
Zicarelli, Hannah [1 ]
机构
[1] Univ Massachusetts, Boston, MA 02125 USA
[2] Royal Holloway Univ London, Egham, Surrey, England
关键词
GPU; Data-race; Static analysis; Behavioural types; DETECTING DATA RACES; VERIFICATION; VERIFIER;
D O I
10.1007/978-3-030-81685-8_19
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
GPUs offer parallelism as a commodity, but they are difficult to program correctly. Static analyzers that guarantee data-race freedom (DRF) are essential to help programmers establish the correctness of their programs (kernels). However, existing approaches produce too many false alarms and struggle to handle larger programs. To address these limitations we formalize a novel compositional analysis for DRF, based on access memory protocols. These protocols are behavioral types that codify the way threads interact over shared memory. Our work includes fully mechanized proofs of our theoretical results, the first mechanized proofs in the field of DRF analysis for GPU kernels. Our theory is implemented in Faial, a tool that outperforms the state-of-the-art. Notably, it can correctly verify at least 1.42x more real-world kernels, and it exhibits a linear growth in 4 out of 5 experiments, while others grow exponentially in all 5 experiments.
引用
收藏
页码:403 / 426
页数:24
相关论文
共 43 条
  • [1] Memory access protocols: certified data-race freedom for GPU kernels
    Cogumbreiro, Tiago
    Lange, Julien
    Liew, Dennis
    Zicarelli, Hannah
    FORMAL METHODS IN SYSTEM DESIGN, 2024, 63 (1-3) : 134 - 171
  • [2] Stateless Model Checking with Data-Race Preemption Points
    Blum, Ben
    Gibson, Garth
    ACM SIGPLAN NOTICES, 2016, 51 (10) : 477 - 493
  • [3] Data-race and concurrent-write freedom are undecidable
    Campos, AE
    Suazo, DA
    COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2003, 29 (1-2) : 1 - 13
  • [4] Model-Checking Task Parallel Programs for Data-Race
    Nakade, Radha
    Mercer, Eric
    Aldous, Peter
    McCarthy, Jay
    NASA FORMAL METHODS, NFM 2018, 2018, 10811 : 367 - 382
  • [5] Model-checking task-parallel programs for data-race
    Nakade, Radha
    Mercer, Eric
    Aldous, Peter
    Storey, Kyle
    Ogles, Benjamin
    Hooker, Joshua
    Powell, Sheridan Jacob
    McCarthy, Jay
    INNOVATIONS IN SYSTEMS AND SOFTWARE ENGINEERING, 2019, 15 (3-4) : 289 - 306
  • [6] Model-checking task-parallel programs for data-race
    Radha Nakade
    Eric Mercer
    Peter Aldous
    Kyle Storey
    Benjamin Ogles
    Joshua Hooker
    Sheridan Jacob Powell
    Jay McCarthy
    Innovations in Systems and Software Engineering, 2019, 15 : 289 - 306
  • [7] JaDaRD: Java data-race detector
    Voráek, Filip
    Troníek, Zdeňk
    SPLASH'12 - Proceedings of the 2012 ACM Conference on Systems, Programming, and Applications: Software for Humanity, 2012, : 71 - 72
  • [8] A simple proof of data-race freedom and coherence for Simpson's 4-slot Algorithm
    Wang, Xu
    Xu, Qiwen
    37TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, 2022, : 1853 - 1856
  • [9] Efficient Data-Race Detection with Dynamic Symbolic Execution
    Ibing, Andreas
    PROCEEDINGS OF THE 2016 FEDERATED CONFERENCE ON COMPUTER SCIENCE AND INFORMATION SYSTEMS (FEDCSIS), 2016, 8 : 1719 - 1726
  • [10] Static data-race detection for multithread programs
    Department of Computer Science and Technology, University of Science and Technology of China, Hefei 230027, China
    不详
    Jisuanji Yanjiu yu Fazhan, 2006, 2 (329-335):