Line-Up: A Complete and Automatic Linearizability Checker

被引:20
|
作者
Burckhardt, Sebastian
Dern, Chris
Musuvathi, Madanlal
Tan, Roy
机构
关键词
Algorithms; Reliability; Verification; Linearizability; Atomicity; Thread Safety;
D O I
10.1145/1809028.1806634
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Modular development of concurrent applications requires thread-safe components that behave correctly when called concurrently by multiple client threads. This paper focuses on linearizability, a specific formalization of thread safety, where all operations of a concurrent component appear to take effect instantaneously at some point between their call and return. The key insight of this paper is that if a component is intended to be deterministic, then it is possible to build an automatic linearizability checker by systematically enumerating the sequential behaviors of the component and then checking if each its concurrent behavior is equivalent to some sequential behavior. We develop this insight into a tool called Line-Up, the first complete and automatic checker for deterministic linearizability. It is complete, because any reported violation proves that the implementation is not linearizable with respect to any sequential deterministic specification. It is automatic, requiring no manual abstraction, no manual specification of semantics or commit points, no manually written test suites, no access to source code. We evaluate Line-Up by analyzing 13 classes with a total of 90 methods in two versions of the. NET Framework 4.0. The violations of deterministic linearizability reported by Line-Up exposed seven errors in the implementation that were fixed by the development team.
引用
收藏
页码:330 / 340
页数:11
相关论文
共 50 条
  • [1] Line-Up: A Complete and Automatic Linearizability Checker
    Burckhardt, Sebastian
    Dern, Chris
    Musuvathi, Madanlal
    Tan, Roy
    PLDI '10: PROCEEDINGS OF THE 2010 ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2010, : 330 - 340
  • [2] DEPOSITION LINE-UP
    不详
    OPTICAL SPECTRA, 1977, 11 (11): : 28 - 29
  • [3] Berlinale line-up
    De Jong, Bruno Savill
    SIGHT AND SOUND, 2023, 33 (02): : 12 - 12
  • [4] Mineral line-up
    Amy Whitchurch
    Nature Geoscience, 2013, 6 (8) : 590 - 590
  • [5] Stellar line-up
    Nathan, Strurt
    Engineer, 2012, 296 (7841) : 26 - 28
  • [6] Lunar line-up
    不详
    NEW SCIENTIST, 2008, 199 (2667) : 7 - 7
  • [8] LINE-UP ON BIOAVAILABILITY
    SCHNELLER, GH
    REVUE CANADIENNE DE BIOLOGIE, 1973, 32 : 151 - 155
  • [9] KENYA LINE-UP
    不详
    ECONOMIST, 1957, 182 (02): : 99 - 99
  • [10] nekton: A Linearizability Proof Checker
    Meyer, Roland
    Opaterny, Anton
    Wies, Thomas
    Wolff, Sebastian
    COMPUTER AIDED VERIFICATION, CAV 2023, PT I, 2023, 13964 : 170 - 183