Effective static race detection for Java
- 11 June 2006
- conference paper
- conference paper
- Published by Association for Computing Machinery (ACM) in Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation - PLDI '06
- Vol. 41 (6), 308-319
- https://doi.org/10.1145/1133981.1134018
Abstract
We present a novel technique for static race detection in Java programs, comprised of a series of stages that employ a combination of static analyses to successively reduce the pairs of memory accesses potentially involved in a race. We have implemented our technique and applied it to a suite of multi-threaded Java programs. Our experiments show that it is precise, scalable, and useful, reporting tens to hundreds of serious and previously unknown concurrency bugs in large, widely-used programs with few false alarms.Keywords
This publication has 47 references indexed in Scilit:
- RaceTrackPublished by Association for Computing Machinery (ACM) ,2005
- Parameterized object sensitivity for points-to analysis for JavaACM Transactions on Software Engineering and Methodology, 2005
- Type Inference for Parameterized Race-Free JavaLecture Notes in Computer Science, 2004
- Type Inference Against RacesLecture Notes in Computer Science, 2004
- RecPlayACM Transactions on Computer Systems, 1999
- Detecting data races in Cilk programs that use locksPublished by Association for Computing Machinery (ACM) ,1998
- Techniques for debugging parallel programs with flowback analysisACM Transactions on Programming Languages and Systems, 1991
- An empirical comparison of monitoring algorithms for access anomaly detectionPublished by Association for Computing Machinery (ACM) ,1990
- Time, clocks, and the ordering of events in a distributed systemCommunications of the ACM, 1978
- ReductionCommunications of the ACM, 1975