RacerD: compositional static race detection

Blackshear, Sam, Gorogiannis, Nikos ORCID logoORCID: https://orcid.org/0000-0001-8660-6609, O'Hearn, Peter and Sergey, Ilya (2018) RacerD: compositional static race detection. Proceedings of the ACM on Programming Languages, 2 (OOPSLA) , 144. 144:1-144:28. ISSN 2475-1421 [Article] (doi:10.1145/3276514)

This is the latest version of this item.

[img]
Preview
PDF - Published version (with publisher's formatting)
Available under License Creative Commons Attribution 4.0.

Download (528kB) | Preview

Abstract

Automatic static detection of data races is one of the most basic problems in reasoning about concurrency. We present RacerD—a static program analysis for detecting data races in Java programs which is fast, can scale to large code, and has proven effective in an industrial software engineering scenario. To our knowledge, RacerD is the first inter-procedural, compositional data race detector which has been empirically shown to have non-trivial precision and impact. Due to its compositionality, it can analyze code changes quickly, and this allows it to perform continuous reasoning about a large, rapidly changing codebase as part of deployment within a continuous integration ecosystem. In contrast to previous static race detectors, its design favors reporting high-confidence bugs over ensuring their absence. RacerD has been in deployment for over a year at Facebook, where it has flagged over 2500 issues that have been fixed by developers before reaching production. It has been important in enabling the development of new code as well as fixing old code: it helped support the conversion of part of the main Facebook Android app from a single-threaded to a multi-threaded architecture. In this paper we describe RacerD’s design, implementation, deployment and impact.

Item Type: Article
Additional Information: Proc. ACM Program. Lang., Vol. 2, No. OOPSLA, Article 144. Publication date: November 2018.
Research Areas: A. > School of Science and Technology > Computer Science > Foundations of Computing group
Item ID: 25492
Notes on copyright: © 2018 Copyright held by the owner/author(s)
This work is licensed under a Creative Commons Attribution 4.0 International License.
Useful Links:
Depositing User: Nikos Gkorogiannis
Date Deposited: 31 Oct 2018 12:52
Last Modified: 29 Nov 2022 19:28
URI: https://eprints.mdx.ac.uk/id/eprint/25492

Available Versions of this Item

Actions (login required)

View Item View Item

Statistics

Activity Overview
6 month trend
269Downloads
6 month trend
272Hits

Additional statistics are available via IRStats2.