multithreaded software.
acknowledgments
This work was supported in part by NSF Grants 0341179,
0341387, 0644130, and 0707885. We thank Ben Wood for
implementing Goldilocks in RoadRunner and for comments on a draft of this paper, and Tayfun Elmas, Shaz
Qadeer, and Serdar Tasiran for their assistance with
Goldilocks.
1. adve, s.V., Hill, m. D., miller, B.p.,
netzer, r.H.B. Detecting data races
on weak memory systems. In ISCA
(1991), 234–243.
2. cern. colt 1. 2.0. available at
http://dsd.lbl.gov/~hoschek/colt/
(2007).
3. choi, J.-D., Lee, K., Loginov, a.,
o’callahan, r., sarkar, V., sridhara,
m. efficient and precise datarace
detection for multithreaded object-oriented programs. In PLDI (2002),
258–269.
4. choi, J.-D., miller, B.p., netzer r.H.B.
techniques for debugging parallel
programs with flowback analysis.
TOPLAS 13, 4 (1991), 491–530.
5. christiaens, m., Bosschere, K.D.
traDe: Data race detection for
Java. In International Conference
References
on Computational Science (2001),
761–770.
6. the eclipse programming
environment, version 3. 4.0.
available at http://www.eclipse.org,
2009.
7. elmas, t., Qadeer, s., tasiran, s.
goldilocks: a race and transaction-aware Java runtime. In PLDI (2007),
245–255.
8. flanagan, c., freund, s.n. fasttrack:
efficient and precise dynamic race
detection. In PLDI (2009), 121–133.
9. flanagan, c., freund, s.n. adversarial
memory for detecting destructive
races. In PLDI (2010), 244–254.
10. flanagan, c., freund, s.n. the
roadrunner dynamic analysis
framework for concurrent programs.
In PAS TE (2010), 1–8.
11. fleury, e., sutre, g. raja, version
0.4.0-pre4. available at http://raja.
sourceforge.net/, 2007.
12. Java grande forum. Java grande
benchmark suite. available at
http://www.javagrande.org/, 2008.
13. Lamport, L. time, clocks, and the
ordering of events in a distributed
system. Commun. ACM 21, 7 (1978),
558–565.
14. mattern, f. Virtual time and global
states of distributed systems. In
Workshop on Parallel and Distributed
Algorithms, 1988.
15. o’callahan, r., choi J.-D. Hybrid
dynamic data race detection. In
PPOPP (2003), 167–178.
16. pozniansky, e., schuster, a. multirace:
efficient on-the-fly data race detection
in multithreaded c++ programs.
Concurrency and Computation:
Practice and Experience 19, 3 (2007),
327–340.
17. ronsse, m., Bosschere, K.D. recplay: a
fully integrated practical record/replay
system. TCS 17, 2 (1999), 133–152.
18. savage, s., Burrows, m., nelson, g.,
sobalvarro, p., anderson, t.e. eraser:
a dynamic data race detector for
multi-threaded programs. TOCS 15, 4
(1997), 391–411.
19. standard performance evaluation
corporation. spec benchmarks.
http://www.spec.org/, 2003.
20. von praun, c., gross, t. object race
detection. In OOPSLA, 2001,
70–82.
21. von praun, c., gross, t. static conflict
analysis for multi-threaded object-oriented programs. In PLDI (2003),
115–128.
22. yu, y., rodeheffer, t., chen, W.
racetrack: efficient detection of data
race conditions via adaptive tracking.
In SOSP (2005), 221–234.
Cormac Flanagan, computer science
Department, university of california at
santa cruz, santa cruz, ca.
Stephen n. Freund, computer
science Department, Williams college,
Williamstown, ma.
© 2010 acm 0001-0782/10/1100 $10.00
CACM lifetime mem half page ad:Layout 1 2/3/10 2:21 PM Page 1
Take Advantage of
ACM’s Lifetime Membership Plan!
◆ ACM Professional Members can enjoy the convenience of making a single payment for their
entire tenure as an ACM Member, and also be protected from future price increases by
taking advantage of ACM's Lifetime Membership option.
◆ ACM Lifetime Membership dues may be tax deductible under certain circumstances, so
becoming a Lifetime Member can have additional advantages if you act before the end of
2010. (Please consult with your tax advisor.)
◆ Lifetime Members receive a certificate of recognition suitable for framing, and enjoy all of
the benefits of ACM Professional Membership.
Learn more and apply at:
http://www.acm.org/life