Acculock: accurate and efficient detection of data races
Article first published online: 16 APR 2012
Copyright © 2012 John Wiley & Sons, Ltd.
Software: Practice and Experience
Volume 43, Issue 5, pages 543–576, May 2013
How to Cite
Xie, X., Xue, J. and Zhang, J. (2013), Acculock: accurate and efficient detection of data races. Softw: Pract. Exper., 43: 543–576. doi: 10.1002/spe.2121
- Issue published online: 12 APR 2013
- Article first published online: 16 APR 2012
- Manuscript Accepted: 20 MAR 2012
- Manuscript Revised: 18 MAR 2012
- Manuscript Received: 2 SEP 2011
- data races;
- happens before;
- dynamic analysis
This paper introduces a new dynamic data race detector, ACCULOCK, to detect data races in Java programs. ACCULOCK is the first hybrid detector that combines lockset and epoch-based happens-before for race detection. ACCULOCK analyzes a program execution by reasoning about the subset of the happens-before relation observed with lock acquires and releases excluded, thereby making it less sensitive to thread interleaving than pure happens-before detectors. When this relaxed happens-before relation is violated, ACCULOCK applies a new lockset algorithm to verify the locking discipline by distinguishing reads and writes, thereby making it more immune to false positives than pure lockset detectors. In addition, ACCULOCK is designed to achieve these design objectives by maintaining comparable instrumentation overheads (in both time and space) to that of FASTTRACK, the fastest happens-before detector available (at least for Java programs). All these properties of ACCULOCK have been validated and confirmed by comparing it against FASTTRACK and five other (pure happens-before, pure lockset, or hybrid) detectors, which are implemented in the Jikes Research Virtual Machine using a collection of large benchmark programs from a variety of applications. Furthermore, porting ACCULOCK and FASTTRACK to a different platform, RoadRunner, and repeating our experiments yield similar observations in terms of their effectiveness in race detection and instrumentation overheads. Copyright © 2012 John Wiley & Sons, Ltd.