Sciweavers

FATES
2006
Springer

Goldilocks: Efficiently Computing the Happens-Before Relation Using Locksets

14 years 3 months ago
Goldilocks: Efficiently Computing the Happens-Before Relation Using Locksets
We present a new lockset-based algorithm, Goldilocks, for precisely computing the happens-before relation and thereby detecting data-races at runtime. Dynamic race detection algorithms in the literature are based on vector clocks or locksets. Vector-clock-based algorithms precisely compute the happens-before relation but have significantly more overhead. Previous lockset-based race detection algorithms, on the other hand, are imprecise. They check adherence to a particular synchronization discipline, i.e., a sufficient condition for race freedom and may generate false race warnings. Our algorithm, like vector clocks, is precise, yet it is efficient since it is purely lockset based. We have implemented our algorithm inside the Kaffe Java Virtual Machine. Our implementation incorporates lazy evaluation of locksets and certain "short-circuit checks" which contribute significantly to its efficiency. Experimental results indicate that our algorithm's overhead is much less tha...
Tayfun Elmas, Shaz Qadeer, Serdar Tasiran
Added 22 Aug 2010
Updated 22 Aug 2010
Type Conference
Year 2006
Where FATES
Authors Tayfun Elmas, Shaz Qadeer, Serdar Tasiran
Comments (0)