AtexRace: Across Thread and Execution Sampling for In-House Race Detection

  • Yu Guo
  • , Yan Cai
  • , Zijiang Yang

Research output: Contribution to conferencePaperpeer-review

9 Scopus citations

Abstract

Data race is a major source of concurrency bugs. Dynamic data race detection tools (e.g., FastTrack) monitor the executions of a program to report data races occurring in runtime. However, such tools incur significant overhead that slows down and perturbs executions. To address the issue, the state-of-the-art dynamic data race detection tools (e.g., LiteRace) apply sampling techniques to selectively monitor memory accesses. Although they reduce overhead, they also miss many data races as confirmed by existing studies. Thus, practitioners face a dilemma on whether to use FastTrack, which detects more data races but is much slower, or LiteRace, which is faster but detects less data races. In this paper, we propose a new sampling approach to address the major limitations of current sampling techniques, which ignore the facts that a data race involves two threads and a program under testing is repeatedly executed. We develop a tool called AtexRace to sample memory accesses across both threads and executions. By selectively monitoring the pairs of memory accesses that have not been frequently observed in current and previous executions, AtexRace detects as many data races as FastTrack at a cost as low as LiteRace. We have compared AtexRace against FastTrack and LiteRace on both Parsec benchmark suite and a large-scale real-world MySQL Server with 223 test cases. The experiments confirm that AtexRace can be a replacement of FastTrack and LiteRace.

Original languageEnglish
Pages315-325
Number of pages11
DOIs
StatePublished - 2017
Event11th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, ESEC/FSE 2017 - Paderborn, Germany
Duration: 4 Sep 20178 Sep 2017

Conference

Conference11th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, ESEC/FSE 2017
Country/TerritoryGermany
CityPaderborn
Period4/09/178/09/17

Keywords

  • concurrency bugs
  • Data race
  • sampling

Fingerprint

Dive into the research topics of 'AtexRace: Across Thread and Execution Sampling for In-House Race Detection'. Together they form a unique fingerprint.

Cite this