Verifying Linearizability on TSO Architectures

被引:0
|
作者
Derrick, John [1 ]
Smith, Graeme [2 ]
Dongol, Brijesh [1 ]
机构
[1] Univ Sheffield, Dept Comp, Sheffield, S Yorkshire, England
[2] Univ Queensland, Sch Informat Technol & Elect Engn, Brisbane, Qld, Australia
来源
基金
英国工程与自然科学研究理事会;
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Linearizability is the standard correctness criterion for fine-grained, non-atomic concurrent algorithms, and a variety of methods for verifying linearizability have been developed. However, most approaches assume a sequentially consistent memory model, which is not always realised in practice. In this paper we define linearizability on a weak memory model: the TSO (Total Store Order) memory model, which is implemented in the x86 multicore architecture. We also show how a simulation-based proof method can be adapted to verify linearizability for algorithms running on TSO architectures. We demonstrate our approach on a typical concurrent algorithm, spinlock, and prove it linearizable using our simulation-based approach. Previous approaches to proving linearizabilty on TSO architectures have required a modification to the algorithm's natural abstract specification. Our proof method is the first, to our knowledge, for proving correctness without the need for such modification.
引用
收藏
页码:341 / 356
页数:16
相关论文
共 50 条
  • [1] TSO-to-TSO linearizability is undecidable
    Wang, Chao
    Lv, Yi
    Wu, Peng
    [J]. ACTA INFORMATICA, 2018, 55 (08) : 649 - 668
  • [2] TSO-to-TSO Linearizability Is Undecidable
    Wang, Chao
    Lv, Yi
    Wu, Peng
    [J]. AUTOMATED TECHNOLOGY FOR VERIFICATION AND ANALYSIS, ATVA 2015, 2015, 9364 : 309 - 325
  • [3] TSO-to-TSO linearizability is undecidable
    Chao Wang
    Yi Lv
    Peng Wu
    [J]. Acta Informatica, 2018, 55 : 649 - 668
  • [4] Verifying Linearizability with Hindsight
    O'Hearn, Peter W.
    Rinetzky, Noam
    Vechev, Martin T.
    Yahav, Eran
    Yorsh, Greta
    [J]. PODC 2010: PROCEEDINGS OF THE 2010 ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING, 2010, : 85 - 94
  • [5] Comparison under abstraction for verifying linearizability
    Amit, Daphna
    Rinetzky, Noam
    Reps, Thomas
    Sagiv, Mooly
    Yahav, Eran
    [J]. COMPUTER AIDED VERIFICATION, PROCEEDINGS, 2007, 4590 : 477 - +
  • [6] Verifying a quantitative relaxation of linearizability via refinement
    Kiran Adhikari
    James Street
    Chao Wang
    Yang Liu
    Shaojie Zhang
    [J]. International Journal on Software Tools for Technology Transfer, 2016, 18 : 393 - 407
  • [7] Verifying Linearizability of Intel® Software Guard Extensions
    Leslie-Hurd, Rebekah
    Caspi, Dror
    Fernandez, Matthew
    [J]. COMPUTER AIDED VERIFICATION, CAV 2015, PT II, 2015, 9207 : 144 - 160
  • [8] Verifying a quantitative relaxation of linearizability via refinement
    Adhikari, Kiran
    Street, James
    Wang, Chao
    Liu, Yang
    Zhang, Shaojie
    [J]. INTERNATIONAL JOURNAL ON SOFTWARE TOOLS FOR TECHNOLOGY TRANSFER, 2016, 18 (04) : 393 - 407
  • [9] Verifying Linearizability via Optimized Refinement Checking
    Liu, Yang
    Chen, Wei
    Liu, Yanhong A.
    Sun, Jun
    Zhang, Shao Jie
    Dong, Jin Song
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2013, 39 (07) : 1018 - 1039
  • [10] Quiescent Consistency: Defining and Verifying Relaxed Linearizability
    Derrick, John
    Dongol, Brijesh
    Schellhorn, Gerhard
    Tofan, Bogdan
    Travkin, Oleg
    Wehrheim, Heike
    [J]. FM 2014: FORMAL METHODS, 2014, 8442 : 200 - 214