Model-checking task-parallel programs for data-race

被引:1
|
作者
Radha Nakade
Eric Mercer
Peter Aldous
Kyle Storey
Benjamin Ogles
Joshua Hooker
Sheridan Jacob Powell
Jay McCarthy
机构
[1] Brigham Young University,
[2] University of Massachusetts Lowell,undefined
关键词
Model checking; Data-race; Task parallel; Cilk; x10; Habanero; OpenMP; SP-bags; Vector clocks; Formal verification; Happens-before; Partial order; Computation graph; Determinism;
D O I
暂无
中图分类号
学科分类号
摘要
Many of the correctness properties afforded by task-parallel programming models such as OpenMP, Cilk, X10, Chapel, Habanero, etc. rely on data-race freedom. The research in this paper studies data-race in the context of these models with the intent to prove with model checking its absence on any feasible schedule for a given input. The paper presents the computation graph as a representation of a happens-before relation that additionally tracks memory accesses with a quadratic algorithm to detect data-race on the graph. It then shows how the graph is constructed from an execution of a task-parallel program and proves that under a fixed order of mutual exclusion, if a schedule with a data-race exists in the program, then a data-race is manifest in the computation graph. The paper then defines a model checking algorithm that enumerates all orders of mutual exclusion to prove data-race freedom over all schedules on the given input. The approach is evaluated in a Java implementation of Habanero using the JavaPathfinder model checker. The results, when compared to other data-race detectors including one based on vector clocks, show that this new approach is more efficient than existing JavaPathfinder solutions and is comparable to the vector clock solution in the absence of data-race but slower in the presence of data-race since the vector clock algorithm is on-the-fly while the new approach is not. The results also show that the new approach avoids the memory overhead of vector clocks when there are many tasks and objects to track.
引用
收藏
页码:289 / 306
页数:17
相关论文
共 50 条
  • [1] 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
    [J]. INNOVATIONS IN SYSTEMS AND SOFTWARE ENGINEERING, 2019, 15 (3-4) : 289 - 306
  • [2] Model-Checking Task Parallel Programs for Data-Race
    Nakade, Radha
    Mercer, Eric
    Aldous, Peter
    McCarthy, Jay
    [J]. NASA FORMAL METHODS, NFM 2018, 2018, 10811 : 367 - 382
  • [3] Stateless Model Checking with Data-Race Preemption Points
    Blum, Ben
    Gibson, Garth
    [J]. ACM SIGPLAN NOTICES, 2016, 51 (10) : 477 - 493
  • [4] Dynamic Determinacy Race Detection for Task-Parallel Programs with Promises
    Jin, Feiyang
    Yu, Lechen
    Cogumbreiro, Tiago
    Shirako, Jun
    Sarkar, Vivek
    [J]. Leibniz International Proceedings in Informatics, LIPIcs, 2023, 263
  • [5] Performance modelling for task-parallel programs
    Kühnemann, M
    Rauber, T
    Rünger, G
    [J]. PERFORMANCE ANALYSIS AND GRID COMPUTING, 2004, : 77 - 91
  • [6] Checking Data-Race Freedom of GPU Kernels, Compositionally
    Cogumbreiro, Tiago
    Lange, Julien
    Rong, Dennis Liew Zhen
    Zicarelli, Hannah
    [J]. COMPUTER AIDED VERIFICATION (CAV 2021), PT I, 2021, 12759 : 403 - 426
  • [7] A Transformation Framework for Optimizing Task-Parallel Programs
    Nandivada, V. Krishna
    Shirako, Jun
    Zhao, Jisheng
    Sarkar, Vivek
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2013, 35 (01):
  • [8] TProf: An energy profiler for task-parallel programs
    Manousakis, Ioannis
    Zakkak, Foivos S.
    Pratikakis, Polyvios
    Nikolopoulos, Dimitrios S.
    [J]. SUSTAINABLE COMPUTING-INFORMATICS & SYSTEMS, 2015, 5 : 1 - 13
  • [9] Towards Model-Checking Programs with Lists
    Finkel, Alain
    Lozes, Etienne
    Sangnier, Arnaud
    [J]. INFINITY IN LOGIC AND COMPUTATION, 2009, 5489 : 56 - 86
  • [10] Static data-race detection for multithread programs
    Department of Computer Science and Technology, University of Science and Technology of China, Hefei 230027, China
    不详
    [J]. Jisuanji Yanjiu yu Fazhan, 2006, 2 (329-335):