Static data-race detection is a powerful tool by providing clues for dynamic approaches to only instrument certain memory accesses. However, static data-race analysis suffers from high false positive rate. A key reason is that static analysis overestimates the set of shared objects a thread can access. We propose thread specialization to distinguish threads statically. By fixing the number of threads as well as the ID assigned to each thread, a program can be transformed to a simplified version. Static data-race analysis on this simplified program can infer the range of addresses accessed by each thread more accurately. Our approach prunes false positives by an average of 89.2% and reduces dynamic instrumentation by an average of 63.4% in seven benchmarks. © 2013 Springer-Verlag.
CITATION STYLE
Chen, C., Lu, K., Wang, X., Zhou, X., & Fang, L. (2013). Pruning false positives of static data-race detection via thread specialization. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 8299 LNCS, pp. 77–90). https://doi.org/10.1007/978-3-642-45293-2_6
Mendeley helps you to discover research relevant for your work.