Scalable Data Race Detection for Lock-Intensive Programs with Pending Period Representation

被引:1
|
作者
Liao, Xiaofei [1 ]
Lin, Minhao [1 ]
Zheng, Long [1 ]
Jin, Hai [1 ]
Shao, Zhiyuan [1 ]
机构
[1] Huazhong Univ Sci & Technol, Sch Comp Sci & Technol, Cluster & Grid Comp Lab, Serv Comp Technol & Syst Lab,Big Data Technol & S, Wuhan 430074, Hubei, Peoples R China
基金
中国国家自然科学基金;
关键词
Data race; scalability; efficiency; happens-before relation; global clock; sampling; SYSTEMS; TIME; !text type='JAVA']JAVA[!/text;
D O I
10.1109/TPDS.2018.2836899
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Most of dynamic data race detection essentially relies on the underlying happens-before orders to yield the precise reports. They are notoriously prone to a prohibitively basic overhead. Although there exist a wealth of research advances that succeed in significantly reducing the analysis overhead on memory accesses, there remains an open problem in handling a great deal of fundamentally unscalable synchronization overhead, which can be particularly serious for the large, lock-intensive programs with a long running time and a large number of threads. In this paper, we revisit the synchronization problem of off-the-shelf race detection with a comprehensive study. The key insight of this work is that a full collection of partial orders for synchronization operations in prior work is not necessarily tracked and analyzed from a new perspective of "global clock" representation. We therefore develop this insight into a novel pending-period based approach, aiming at reducing the overhead of monitoring and analysis on unnecessary synchronization operations. Further, we also enable a significant improvement for enhancing the efficiency of existing sampling techniques, in which synchronization operations are often conservatively identified. Our experimental results on a wide variety of programs show that our approach outperforms state-of-the-art by 5.85x (versus FastTrack), 3.51x (versus ThreadSanitizer) and 1.34x (versus IFRit) program execution slowdown improvement on average, which can be more significant as the number of threads is increasing. Particularly for the lock-intensive programs (e.g., barnes), our approach can be 26.04x faster than FastTrack. Further, our pending period extended sampling is more efficient than Pacer (with up to 31.28 percent improvement in the case of 10 percent sampling rate).
引用
收藏
页码:2599 / 2612
页数:14
相关论文
共 30 条
  • [21] Data Race Detection for Interrupt-Driven Programs via Bounded Model Checking
    Wu, Xueguang
    Wen, Yanjun
    Chen, Liqian
    Dong, Wei
    Wang, Ji
    2013 IEEE 7TH INTERNATIONAL CONFERENCE ON SOFTWARE SECURITY AND RELIABILITY - COMPANION (SERE-C), 2013, : 205 - 211
  • [22] MultiRace: efficient on-the-fly data race detection in multithreaded C++ programs
    Pozniansky, Eli
    Schuster, Assaf
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2007, 19 (03): : 327 - 340
  • [23] Dynamic data race detection in Java']Java-programs using synchronization contracts
    Tsitelov, Dmitry
    Trifanov, Vitaly
    2013 TOOLS & METHODS OF PROGRAM ANALYSIS (TMPA 2013), 2013, : 3 - 8
  • [24] Efficient Data Race Detection of Async-Finish Programs Using Vector Clocks
    Kumar, Shivam
    Agrawal, Anupam
    Biswas, Swarnendu
    PROCEEDINGS OF THE THIRTEENTH INTERNATIONAL WORKSHOP ON PROGRAMMING MODELS AND APPLICATIONS FOR MULTICORES AND MANYCORES (PMAM '22), 2022, : 45 - 54
  • [25] Fence Placement for Legacy Data-Race-Free Programs via Synchronization Read Detection
    Mcpherson, Andrew J.
    Nagarajan, Vijay
    Sarkar, Susmit
    Cintra, Marcelo
    ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2016, 12 (04)
  • [26] Data Race Detection and Replay of Multi-threaded Programs Based on Petri Net Unfolding
    Lu F.-M.
    Huang Y.
    Zeng Q.-T.
    Bao Y.-X.
    Tang M.-F.
    Ruan Jian Xue Bao/Journal of Software, 2023, 34 (08): : 3726 - 3744
  • [27] Efficient data race detection for interrupt-driven programs via path feasibility analysis
    Zhao, Jingwen
    Wu, Yanxia
    Dong, Jibin
    JOURNAL OF SUPERCOMPUTING, 2024, 80 (15): : 21699 - 21725
  • [28] Efficient Data Race Detection for C/C plus plus Programs Using Dynamic Granularity
    Song, Young Wn
    Lee, Yann-Hang
    2014 IEEE 28TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM, 2014,
  • [29] Fence Placement for Legacy Data-Race-Free Programs via Synchronization Read Detection
    McPherson, Andrew J.
    Nagarajan, Vijay
    Sarkar, Susmit
    Cintra, Marcelo
    ACM SIGPLAN NOTICES, 2015, 50 (08) : 249 - 250
  • [30] Compile-time support for efficient data race detection in shared-memory parallel programs
    Mellor-Crummey, John
    SIGPLAN Notices (ACM Special Interest Group on Programming Languages), 1993, 28 (12):