Dynamic Race Detection with O(1) Samples
Mosaad Al Thokair, Minjian Zhang, Umang Mathur, Mahesh Viswanathan
Abstract
Happens before-based dynamic analysis is the go-to technique for detecting data races in large scale software projects due to the absence of false positive reports. However, such analyses are expensive since they employ expensive vector clock updates at each event, rendering them usable only for in-house testing. In this paper, we present a sampling-based, randomized race detector that processes only constantly many events of the input trace even in the worst case. This is the first sub-linear time (i.e., running in 𝑜 (𝑛) time where 𝑛 is the length of the trace) dynamic race detection algorithm; previous sampling based approaches like Pacer run in linear time (i.e., 𝑂 (𝑛)). Our algorithm is a property tester for HB-race detection -it is sound in that it never reports any false positive, and on traces that are far, with respect to hamming distance, from any race-free trace, the algorithm detects an HB-race with high probability. Our experimental evaluation of the algorithm and its comparison with state-of-the-art deterministic and sampling based race detectors shows that the algorithm does indeed have significantly low running time, and detects races quite often.
CCS Concepts: • Software and its engineering → Software testing and debugging.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 58d0ed09-3cf5-4d42-a9ea-f967c0616b5aCited by top-tier papers2
- Optimistic Prediction of Synchronization-Reversal Data RacesZheng Shi, Umang Mathur, Andreas PavlogiannisICSE 2024 · 8 citations
- Efficient Timestamping for Sampling-Based Race DetectionMinjian Zhang, Daniel Wee Soong Lim, Mosaad Al Thokair, Umang Mathur et al.PLDI 2025 · 1 citation
Builds on10
- Razzer: Finding Kernel Race Bugs through FuzzingDae R. Jeong, Kyungtae Kim, Basavesh Shivakumar, Byoungyoung Lee et al.S&P 2019 · 202 citations
- Krace: Data Race Fuzzing for Kernel File SystemsMeng Xu, Sanidhya Kashyap, Hanqing Zhao, Taesoo KimS&P 2020 · 131 citations
- Fast, sound, and effectively complete dynamic race predictionAndreas PavlogiannisPOPL 2020 · 46 citations
- Optimal prediction of synchronization-preserving racesUmang Mathur, Andreas Pavlogiannis, Mahesh ViswanathanPOPL 2021 · 36 citations
- SmartTrack: efficient predictive race detectionJake Roemer, Kaan Genç, Michael D. BondPLDI 2020 · 28 citations
Related papers
- NodeRT: Detecting Races in Node.js Applications PracticallyJingyao Zhou, Lei Xu, Gongzheng Lu, Weifeng Zhang et al.ISSTA 2023 · 1 citation
- Race Detection for Event-Driven Node.js ApplicationsXiaoning Chang, Wensheng Dou, Jun Wei, Tao Huang et al.ASE 2021 · 6 citations
- Accurate Static Data Race Detection for CEmerson Sales, Omar Inverso, Emilio TuostoFM 2024 · 1 citation
- When threads meet events: efficient and precise static race detection with originsBozhen Liu, Peiming Liu, Yanze Li, Chia-Che Tsai et al.PLDI 2021 · 17 citations
- Static executes-before analysis for event driven programsRekha R. Pai, Abhishek Uppar, Akshatha Shenoy, Pranshul Kushwaha et al.FSE 2022
