Performance of Dynamic Data Race Detection
Parallel Programming Languages and Models
Reliability and Resiliency
TimeFriday, 19 November 202110:30am - 10:50am CST
DescriptionBenchmarks like DataRaceBench help evaluate the classification quality of data race detection tools for simple memory access patterns. Various publications use short-running benchmark kernels from OmpSRC and DRB also for performance benchmarking. Due to the short execution time, one-time initialization overhead dominates and results are not representative for real codes. This paper proposes a new problem class for SPEC OMP 2012 designed to analyze the runtime overhead of data race detection tools.
Prior work reported runtime overheads of 80x and higher for the OpenMP data race detection tool Archer. We use our newly proposed input data set to investigate the significant runtime overhead of dynamic data race detection for specific applications. With the help of performance analysis techniques, we can identify the root cause. Finally, we propose a modification of ThreadSanitizer, limiting the runtime overhead for these applications to less than 40x.