FastTrack

作者: Cormac Flanagan , Stephen N. Freund

DOI: 10.1145/1542476.1542490

关键词: Constant (computer programming)Vector clockReal-time computingConcurrencyProgram transformationTime complexityJavaComputer science

摘要: \begin{abstract}Multithreaded programs are notoriously prone to race conditions. Prior work on dynamic detectors includes fast but imprecise that report false alarms, as well slow precise never alarms. The latter typically use expensive vector clock operations require time linear in the number of program threads.This paper exploits insight full generality clocks is unnecessary most cases. That is, we can replace heavyweight with an adaptive lightweight representation that, for almost all target program, requires only constant space and supports constant-time operations. This change significantly improves performance, no loss precision.Experimental results Java benchmarks including Eclipse development environment show our FastTrack detector order magnitude faster than a traditional vector-clock detector, roughly twice high-performance DJIT+ algorithm. even comparable speed Eraser benchmarks, while reporting

参考文章(38)
G. S. Avrunin, A. T. Chamillard, L. A. Clarke, Experimental Design for Comparing Static Concurrency Analysis University of Massachusetts. ,(1996)
Hiroyasu Nishiyama, Detecting data races using dynamic escape analysis based on read barrier VM'04 Proceedings of the 3rd conference on Virtual Machine Research And Technology Symposium - Volume 3. pp. 10- 10 ,(2004)
Nicholas Sterling, WARLOCK - A Static Data Race Analysis Tool. USENIX Winter. pp. 97- 106 ,(1993)
Rahul Agarwal, Scott D. Stoller, Type Inference for Parameterized Race-Free Java verification model checking and abstract interpretation. pp. 149- 160 ,(2004) , 10.1007/978-3-540-24622-0_14
E. Pozniansky, A. Schuster, Efficient on-the-fly data race detection in multithreaded C++ programs international parallel and distributed processing symposium. pp. 287- ,(2003) , 10.1109/IPDPS.2003.1213513
Albert Timothy Chamillard, Lori A. Clarke, An empirical comparison of static concurrency analysis techniques University of Massachusetts Amherst. ,(1996)
Caitlin Sadowski, Stephen N. Freund, Cormac Flanagan, SingleTrack: A Dynamic Determinism Checker for Multithreaded Programs european symposium on programming. pp. 394- 409 ,(2009) , 10.1007/978-3-642-00590-9_28
Shaz Qadeer, Iulian Neamtiu, Thomas Ball, Piramanayagam Arumuga Nainar, Madanlal Musuvathi, Gerard Basler, Finding and reproducing Heisenbugs in concurrent programs operating systems design and implementation. pp. 267- 280 ,(2008) , 10.5555/1855741.1855760
Stefan Savage, Michael Burrows, Greg Nelson, Patrick Sobalvarro, Thomas Anderson, Eraser: a dynamic data race detector for multithreaded programs ACM Transactions on Computer Systems. ,vol. 15, pp. 391- 411 ,(1997) , 10.1145/265924.265927