What'’s the Optimal Performance of Precise Dynamic Race Detection? –A Redundancy Perspective

Authors Jeff Huang, Arun K. Rajagopalan

Thumbnail PDF


  • Filesize: 0.7 MB
  • 22 pages

Document Identifiers

Author Details

Jeff Huang
Arun K. Rajagopalan

Cite AsGet BibTex

Jeff Huang and Arun K. Rajagopalan. What'’s the Optimal Performance of Precise Dynamic Race Detection? –A Redundancy Perspective. In 31st European Conference on Object-Oriented Programming (ECOOP 2017). Leibniz International Proceedings in Informatics (LIPIcs), Volume 74, pp. 15:1-15:22, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2017)


In a precise data race detector, a race is detected only if the execution exhibits a real race. In such tools, every memory access from each thread is typically checked by a happens-before algorithm. What’s the optimal runtime performance of such tools? In this paper, we identify that a significant percentage of memory access checks in real-world program executions are often redundant: removing these checks affects neither the precision nor the capability of race detection. We show that if all such redundant checks were eliminated with no cost, the optimal performance of a state-of-the-art dynamic race detector, FastTrack, could be improved by 90%, reducing its runtime overhead from 68X to 7X on a collection of CPU intensive benchmarks. We further develop a purely dynamic technique, ReX, that efficiently filters out redundant checks and apply it to FastTrack. With ReX, the runtime performance of FastTrack is improved by 31% on average.
  • Data Race Detection
  • Dynamic Analysis
  • Concurrency
  • Redundancy


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads