Efficient Data Race Detection of Async-Finish Programs Using Vector Clocks

12/08/2021
by   Shivam Kumar, et al.
0

Existing data race detectors for task-based programs incur significant run time and space overheads. The overheads arise because of frequent lookups in fine-grained tree data structures to check whether two accesses can happen in parallel. This work shows how to efficiently apply vector clocks for dynamic data race detection of async-finish programs with locks. Our proposed technique, FastRacer, builds on the FastTrack algorithm with per-task and per-variable optimizations to reduce the size of vector clocks. FastRacer exploits the structured parallelism of async-finish programs to use a coarse-grained encoding of the dynamic task inheritance relations to limit the metadata in the presence of many concurrent readers. Our evaluation shows that FastRacer substantially improves time and space overheads over FastTrack, and is competitive with the state-of-the-art data race detectors for async-finish programs with locks.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset