Sciweavers

SPAA
1997
ACM

Efficient Detection of Determinacy Races in Cilk Programs

13 years 8 months ago
Efficient Detection of Determinacy Races in Cilk Programs
A parallel multithreaded program that is ostensibly deterministic may nevertheless behave nondeterministically due to bugs in the code. These bugs are called determinacy races, and they result when one thread updatesa location in shared memory while another thread is concurrently accessingthe location. We haveimplemented a provably efficient determinacy-race detector for Cilk, an algorithmic multithreaded programming language. If a Cilk program run on a given input data set has a determinacy race, our debugging tool, which we call the "Nondeterminator," guarantees to detect and localize the race. The core of the Nondeterminator is an asymptotically efficient serial algorithm (inspired by Tarjan's nearly linear-time leastcommon-ancestors algorithm) for detecting determinacy races in series-parallel directed acyclic graphs. For a Cilk program that runs in T time on one processor and uses v shared-memory locations, the Nondeterminator runs in O(T (v; v)) time, where is Ta...
Mingdong Feng, Charles E. Leiserson
Added 26 Aug 2010
Updated 26 Aug 2010
Type Conference
Year 1997
Where SPAA
Authors Mingdong Feng, Charles E. Leiserson
Comments (0)