Optimized Sound and Complete Data Race Detection in Structured Parallel Programs

被引:0
|
作者
Storey, Kyle [1 ]
Powell, Jacob [1 ]
Ben Ogles [1 ]
Hooker, Joshua [1 ]
Aldous, Peter [1 ]
Mercer, Eric [1 ]
机构
[1] Brigham Young Univ, Provo, UT 84601 USA
基金
美国国家科学基金会;
关键词
DETERMINISM; CLOCKS;
D O I
10.1007/978-3-030-34627-0_8
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Task parallel programs that are free of data race are guaranteed to be deterministic, serializable, and free of deadlock. Techniques for verification of data race freedom vary in both accuracy and asymptotic complexity. One work is particularly well suited to task parallel programs with isolation and lightweight threads. It uses the Java Pathfinder model checker to reason about different schedules and proves the presence or absence of data race in a program on a fixed input. However, it uses a direct and inefficient transitive closure on the happens-before relation to reason about data race. This paper presents Zipper, an alternative to this na<spacing diaeresis>ive algorithm, which identifies the presence or absence of data race in asymptotically superior time. Zipper is optimized for lightweight threads and, in the presence of many threads, has superior time complexity to leading vector clock algorithms. This paper includes an empirical study of Zipper and a comparison against the naive computation graph algorithm, demonstrating the superior performance it achieves.
引用
收藏
页码:94 / 111
页数:18
相关论文
共 50 条
  • [11] Dynamic Determinacy Race Detection for Task-Parallel Programs with Promises
    Jin, Feiyang
    Yu, Lechen
    Cogumbreiro, Tiago
    Shirako, Jun
    Sarkar, Vivek
    Leibniz International Proceedings in Informatics, LIPIcs, 2023, 263
  • [12] Test-Driven Repair of Data Races in Structured Parallel Programs
    Surendran, Rishi
    Raman, Raghavan
    Chaudhuri, Swarat
    Mellor-Crummey, John
    Sarkar, Vivek
    ACM SIGPLAN NOTICES, 2014, 49 (06) : 15 - 25
  • [13] 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
  • [14] ANALYSIS AND SYNTHESIS OF STRUCTURED PARALLEL PROGRAMS
    GLUSHKOV, VM
    TSEITLIN, GE
    YUSHCHENKO, EL
    CYBERNETICS, 1981, 17 (03): : 299 - 314
  • [15] Pointer analysis for structured parallel programs
    Rugina, R
    Rinard, MC
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2003, 25 (01): : 70 - 116
  • [16] Efficient, Near Complete, and Often Sound Hybrid Dynamic Data Race Prediction
    Sulzmann, Martin
    Stadtmueller, Kai
    MPLR '20: PROCEEDINGS OF THE 17TH INTERNATIONAL CONFERENCE ON MANAGED PROGRAMMING LANGUAGES AND RUNTIMES, 2020, : 30 - 51
  • [17] Context-Sensitive Data Race Detection for Concurrent Programs
    Zhang, Yang
    Liu, Huan
    Qiao, Liu
    IEEE ACCESS, 2021, 9 : 20861 - 20867
  • [18] Refined method for dynamic data race detection of BPEL programs
    Lu W.
    Lu F.
    Bao Y.
    Zeng Q.
    Duan H.
    Jisuanji Jicheng Zhizao Xitong/Computer Integrated Manufacturing Systems, CIMS, 2022, 28 (10): : 3064 - 3080
  • [19] Static analysis for concurrent programs with applications to data race detection
    Kahlon V.
    Sankaranarayanan S.
    Gupta A.
    International Journal on Software Tools for Technology Transfer, 2013, 15 (4) : 321 - 336
  • [20] Static Data Race Detection for Concurrent Programs with Asynchronous Calls
    Kahlon, Vineet
    Sinha, Nishant
    Kruus, Erik
    Zhang, Yun
    7TH JOINT MEETING OF THE EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2009, : 13 - 22