Accurate and efficient filtering for the Intel thread checker race detector

Paul Sack, Brian E. Bliss, Zhiqiang Ma, Paul Petersen, Josep Torrellas

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Debugging data races in parallel applications is a difficult task. Error-causing data races may appear to vanish due to changes in an application's optimization level, thread scheduling, whether or not a debugger is used, and other effects. Further, many race conditions cause incorrect program behavior only in rare scenarios and may lie undetected during software testing.Tools exist today that do a decent job in finding data races in multi-threaded applications. Some data-race detection tools are very efficient and can detect data races with less than a 2x performance penalty. Most such tools, however, do not provide enough information to the user, require recompilation, or impose other usage restrictions. Other tools, such as the one considered in this paper (Intel's Thread Checker), provide users with plenty of useful information and can be used with any application binary, but have high overheads - often over 200x. It is the goal of this paper to speed up Thread Checker by filtering out the vast majority of memory references that are highly unlikely to be involved in data races. In our work, we develop filters that filter 90-100% of all memory references from the datarace detection algorithm, resulting in speedups of 2.2-5.5x, with an average improvement of 3.3x.

Original languageEnglish (US)
Title of host publicationASID'06
Subtitle of host publicationFirst Workshop on Architectural and System Support for Improving Software Dependability, in conjunction with ASPLOS 2006
Pages34-41
Number of pages8
DOIs
StatePublished - 2006
EventASID'06: 1st Workshop on Architectural and System Support for Improving Software Dependability - San Jose, CA, United States
Duration: Oct 21 2006Oct 21 2006

Publication series

NameASID'06: 1st Workshop on Architectural and System Support for Improving Software Dependability

Other

OtherASID'06: 1st Workshop on Architectural and System Support for Improving Software Dependability
Country/TerritoryUnited States
CitySan Jose, CA
Period10/21/0610/21/06

Keywords

  • Data-race detection

ASJC Scopus subject areas

  • Hardware and Architecture
  • Information Systems
  • Software

Fingerprint

Dive into the research topics of 'Accurate and efficient filtering for the Intel thread checker race detector'. Together they form a unique fingerprint.

Cite this