“…Many researchers have studied how to detect data races dynamically via software techniques [2,8,9,12,15,16,32,34,35,39,50] and hardware techniques [11,24,30,33,51]. Despite much progress, dynamic data race detection remains expensive on commodity hardware, especially when analyzing unmanaged code.…”