The Anchor Verifier for Blocking and Non-blocking Concurrent Software

被引:3
|
作者
Flanagan, Cormac [1 ]
Freund, Stephen N. [2 ]
机构
[1] Univ Calif Santa Cruz, Santa Cruz, CA 95064 USA
[2] Williams Coll, Williamstown, MA 01267 USA
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2020年 / 4卷 / 04期
基金
美国国家科学基金会;
关键词
concurrent program verification; reduction; synchronization; MODULAR VERIFICATION; REDUCTION; PROGRAMS;
D O I
10.1145/3428224
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Verifying the correctness of concurrent software with subtle synchronization is notoriously challenging. We present the ANCHOR verifier, which is based on a new formalism for specifying synchronization disciplines that describes both (1) what memory accesses are permitted, and (2) how each permitted access commutes with concurrent operations of other threads (to facilitate reduction proofs). ANCHOR supports the verification of both lock-based blocking and cas-based non-blocking algorithms. Experiments on a variety concurrent data structures and algorithms show that ANCHOR significantly reduces the burden of concurrent verification.
引用
收藏
页数:29
相关论文
共 50 条
  • [21] Efficient Non-blocking Radix Trees
    Velamuri, Varun
    EURO-PAR 2017: PARALLEL PROCESSING, 2017, 10417 : 565 - 579
  • [22] Efficient and non-blocking agreement protocols
    Gupta, Suyash
    Sadoghi, Mohammad
    DISTRIBUTED AND PARALLEL DATABASES, 2020, 38 (02) : 287 - 333
  • [23] Non-blocking Binary Search Trees
    Ellen, Faith
    Fatourou, Panagiota
    Ruppert, Eric
    van Breugel, Franck
    PODC 2010: PROCEEDINGS OF THE 2010 ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING, 2010, : 131 - 140
  • [24] REARRANGEABLE AND NON-BLOCKING SWITCHING NETWORKS
    PIPPENGER, N
    JOURNAL OF COMPUTER AND SYSTEM SCIENCES, 1978, 17 (02) : 145 - 162
  • [25] A STUDY OF NON-BLOCKING SWITCHING NETWORKS
    CLOS, C
    BELL SYSTEM TECHNICAL JOURNAL, 1953, 32 (02): : 406 - 424
  • [26] Modular Verification of a Non-Blocking Stack
    Parkinson, Matthew
    Bornat, Richard
    O'Heam, Peter
    CONFERENCE RECORD OF POPL 2007: THE 34TH ACM SIGPLAN SIGACT SYMPOSIUM ON PRINCIPLES OF PROGAMMING LANGUAGES, 2007, : 297 - 302
  • [27] Non-Blocking Conditions for EGS Networks
    Busi, Italo
    Pattavina, Achille
    IEEE COMMUNICATIONS LETTERS, 2010, 14 (06) : 572 - 574
  • [28] A case for non-blocking collective operations
    Hoefler, Torsten
    Squyres, Jeffrey M.
    Rehm, Wolfgang
    Lumsdaine, Andrew
    FRONTIERS OF HIGH PERFORMANCE COMPUTING AND NETWORKING - ISPA 2006 WORKSHOPS, PROCEEDINGS, 2006, 4331 : 155 - +
  • [29] A General Technique for Non-blocking Trees
    Brown, Trevor
    Ellen, Faith
    Ruppert, Eric
    ACM SIGPLAN NOTICES, 2014, 49 (08) : 329 - 341
  • [30] Modular verification of a non-blocking stack
    Parkinson, Matthew
    Bornat, Richard
    O'Hearn, Peter
    ACM SIGPLAN NOTICES, 2007, 42 (01) : 297 - 302