IFRit: Interference-Free Regions for Dynamic Data-Race Detection

被引:64
|
作者
Effinger-Dean, Laura [1 ]
Lucia, Brandon [1 ]
Ceze, Luis [1 ]
Grossman, Dan [1 ]
Boehm, Hans-J [2 ]
机构
[1] Univ Washington, Seattle, WA 98195 USA
[2] HP Labs, Palo Alto, CA USA
基金
美国国家科学基金会;
关键词
Languages; Algorithms; Reliability; data-race detection; concurrency; interference-free regions; PROGRAMS;
D O I
10.1145/2398857.2384650
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We propose a new algorithm for dynamic data-race detection. Our algorithm reports no false positives and runs on arbitrary C and C++ code. Unlike previous algorithms, we do not have to instrument every memory access or track a full happens-before relation. Our data-race detector, which we call IFRit, is based on a run-time abstraction called an interference-free region (IFR). An IFR is an interval of one thread's execution during which any write to a specific variable by a different thread is a data race. We insert instrumentation at compile time to monitor active IFRs at run-time. If the runtime observes overlapping IFRs for conflicting accesses to the same variable in two different threads, it reports a race. The static analysis aggregates information for multiple accesses to the same variable, avoiding the expense of having to instrument every memory access in the program. We directly compare IFRit to FastTrack [10] and Thread-Sanitizer [25], two state-of-the-art fully-precise data-race detectors. We show that IFRit imposes a fraction of the overhead of these detectors. We show that for the PARSEC benchmarks, and several real-world applications, IFRit finds many of the races detected by a fully-precise detector. We also demonstrate that sampling can further reduce IFRit's performance overhead without completely forfeiting precision.
引用
收藏
页码:467 / 483
页数:17
相关论文
共 50 条
  • [1] Efficient Data-Race Detection with Dynamic Symbolic Execution
    Ibing, Andreas
    [J]. PROCEEDINGS OF THE 2016 FEDERATED CONFERENCE ON COMPUTER SCIENCE AND INFORMATION SYSTEMS (FEDCSIS), 2016, 8 : 1719 - 1726
  • [2] INTERFERENCE-FREE TRACK VACANCY DETECTION
    HUEMMER, K
    [J]. INTERNATIONAL CONFERENCE ON MAIN LINE RAILWAY ELECTRIFICATION, 1989, 312 : 47 - 52
  • [3] Online data-race detection via coherency guarantees
    Perkovic, D
    Keleher, PJ
    [J]. PROCEEDINGS OF THE SECOND SYMPOSIUM ON OPERATING SYSTEMS DESIGN AND IMPLEMENTATION (OSDI '96), 1996, : 47 - 57
  • [4] LiteRace: Effective Sampling for Lightweight Data-Race Detection
    Marino, Daniel
    Musuvathi, Madanlal
    Narayanasamy, Satish
    [J]. ACM SIGPLAN NOTICES, 2009, 44 (06) : 134 - 143
  • [5] LiteRace: Effective Sampling for Lightweight Data-Race Detection
    Marino, Daniel
    Musuvathi, Madanlal
    Narayanasamy, Satish
    [J]. PLDI'09 PROCEEDINGS OF THE 2009 ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2009, : 134 - 143
  • [6] Ready, set, Go! Data-race detection and the Go language
    Fava, Daniel Schnetzer
    Steffen, Martin
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2020, 195
  • [7] Fast and accurate static data-race detection for concurrent programs
    Kahlon, Vineet
    Yang, Yu
    Sankaranarayanan, Sriram
    Gupta, Aarti
    [J]. COMPUTER AIDED VERIFICATION, PROCEEDINGS, 2007, 4590 : 226 - +
  • [8] Automatic Detection of Extended Data-Race-Free Regions
    Jimborean, Alexandra
    Waern, Jonatan
    Ekemark, Per
    Kaxiras, Stefanos
    Ros, Alberto
    [J]. CGO'17: PROCEEDINGS OF THE 2017 INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2017, : 14 - 26
  • [9] OpenMP aware MHP Analysis for Improved Static Data-Race Detection
    Bora, Utpal
    Vaishay, Shraiysh
    Joshi, Saurabh
    Upadrasta, Ramakrishna
    [J]. PROCEEDINGS OF THE SEVENTH ANNUAL WORKSHOP ON THE LLVM COMPILER INFRASTRUCTURE IN HPC (LLVM-HPC2021), 2021, : 1 - 11
  • [10] Selection of affinity peptides for interference-free detection of cholera toxin
    Lim, Jong Min
    Heo, Nam Su
    Oh, Seo Yeong
    Ryu, Myung Yi
    Seo, Jeong Hyun
    Park, Tae Jung
    Huh, Yun Suk
    Park, Jong Pil
    [J]. BIOSENSORS & BIOELECTRONICS, 2018, 99 : 289 - 295