Speculative Linearizability

被引:5
|
作者
Guerraoui, Rachid [1 ]
Kuncak, Viktor [1 ]
Losa, Giuliano [1 ]
机构
[1] Ecole Polytech Fed Lausanne, Swiss Fed Inst Technol Lausanne, Sch Comp & Commun Sci, Lausanne, Switzerland
关键词
Speculation; Distributed Systems; Modularity; INTERPROCESS COMMUNICATION;
D O I
10.1145/2345156.2254072
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Linearizability is a key design methodology for reasoning about implementations of concurrent abstract data types in both shared memory and message passing systems. It provides the illusion that operations execute sequentially and fault-free, despite the asynchrony and faults inherent to a concurrent system, especially a distributed one. A key property of linearizability is inter-object composability: a system composed of linearizable objects is itself linearizable. However, devising linearizable objects is very difficult, requiring complex algorithms to work correctly under general circumstances, and often resulting in bad average-case behavior. Concurrent algorithm designers therefore resort to speculation: optimizing algorithms to handle common scenarios more efficiently. The outcome are even more complex protocols, for which it is no longer tractable to prove their correctness. To simplify the design of efficient yet robust linearizable protocols, we propose a new notion: speculative linearizability. This property is as general as linearizability, yet it allows intra-object composability: the correctness of independent protocol phases implies the correctness of their composition. In particular, it allows the designer to focus solely on the proof of an optimization and derive the correctness of the overall protocol from the correctness of the existing, non-optimized one. Our notion of protocol phases allows processes to independently switch from one phase to another, without requiring them to reach agreement to determine the change of a phase. To illustrate the applicability of our methodology, we show how examples of speculative algorithms for shared memory and asynchronous message passing naturally fit into our framework. We rigorously define speculative linearizability and prove our intra-object composition theorem in a trace-based as well as an automaton-based model. To obtain a further degree of confidence, we also formalize and mechanically check the theorem in the automaton-based model, using the I/O automata framework within the Isabelle interactive proof assistant. We expect our framework to enable, for the first time, scalable specifications and mechanical proofs of speculative implementations of linearizable objects.
引用
收藏
页码:55 / 66
页数:12
相关论文
共 50 条
  • [1] On the complexity of linearizability
    Hamza, Jad
    [J]. COMPUTING, 2019, 101 (09) : 1227 - 1240
  • [2] Linearizability and Causality
    Doherty, Simon
    Derrick, John
    [J]. SOFTWARE ENGINEERING AND FORMAL METHODS: 14TH INTERNATIONAL CONFERENCE, SEFM 2016, 2016, 9763 : 45 - 60
  • [3] Testing for linearizability
    Lowe, Gavin
    [J]. CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2017, 29 (04):
  • [4] On the complexity of linearizability
    Jad Hamza
    [J]. Computing, 2019, 101 : 1227 - 1240
  • [5] A Compositional Theory of Linearizability
    Vale, Arthur Oliveira
    Shao, Zhong
    Chen, Yixuan
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (POPL): : 1089 - 1120
  • [6] NORMAL HYPERBOLICITY AND LINEARIZABILITY
    VANSTRIEN, SJ
    [J]. INVENTIONES MATHEMATICAE, 1987, 87 (02) : 377 - 384
  • [7] Linearizability with Ownership Transfer
    Gotsman, Alexey
    Yang, Hongseok
    [J]. CONCUR 2012 - CONCURRENCY THEORY, 2012, 7454 : 256 - 271
  • [8] Geometric implications of linearizability
    McSwiggen P.D.
    [J]. Journal of Dynamics and Differential Equations, 2001, 13 (1) : 133 - 146
  • [9] On Register Linearizability and Termination
    Hadzilacos, Vassos
    Hu, Xing
    Toueg, Sam
    [J]. PROCEEDINGS OF THE 2021 ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING (PODC '21), 2021, : 521 - 531
  • [10] A Compositional Theory of Linearizability
    Vale, Arthur Oliveira
    Shao, Zhong
    Chen, Yixuan
    [J]. JOURNAL OF THE ACM, 2024, 71 (02)