作者: Cormac Flanagan , Stephen N. Freund
关键词: Constant (computer programming) 、 Vector clock 、 Real-time computing 、 Concurrency 、 Program transformation 、 Time complexity 、 Java 、 Computer 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