Concurrency-related bugs may happen when multiple threads access shared data and interleave in ways that do not correspond to any sequential execution. Their absence is not guaran...
One of the major productivity hurdles for parallel programming is non-determinism -- a parallel program may yield different results on different executions with the same input, dep...
We extend Cyclone, a type-safe polymorphic language at vel of abstraction, with threads and locks. Data races can violate type safety in Cyclone. An extended type system staticall...
Because data races represent a hard-to-manage class of errors in concurrent programs, numerous approaches to detect them have been proposed and evaluated. We specifically consider...
Paruj Ratanaworabhan, Martin Burtscher, Darko Kiro...
Data races do not cover all kinds of concurrency errors. This paper presents a data-ow-based technique to nd stale-value errors, which are not found by low-level and high-level d...