Efficient transformations of obstruction-free algorithms into non-blocking algorithms

被引:0
|
作者
Taubenfeld, Gadi [1 ]
机构
[1] Interdisciplinary Ctr, IL-46150 Herzliyya, Israel
来源
关键词
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Three well studied progress conditions for implementing concurrent algorithms without locking are, obstruct ion-freedom, non-blocking and wait-freedom. Obstruction-freedom is weaker than non-blocking which, in turn, is weaker than wait-freedom. While obstruction-freedom and non-blocking have the potential to significantly improve the performance of concurrent applications, wait-freedom (although desirable) imposes too much overhead upon the implementation. In [5], Fich, Luchangco, Moir, and Shavit have presented an interesting transformation that converts any obstruct ion-free algorithm into a wait-free algorithm when analyzed in the unknown-bound semi-synchronous model. The FLMS transformation uses n atomic single-writer registers, n atomic multi-writer registers and a single fetch-and-increment object, where n is the number of processes. We define a time complexity measure for analyzing such transformations, and prove that the time complexity of the FLMS transformation is exponential in the number of processes n. This leads naturally to the question of whether the time and/or space complexity of the FLMS transformation can be improved by relaxing the wait-freedom progress condition. We present several efficient transformations that convert any obstruct ion-free algorithm into a non-blocking algorithm when analyzed in the unknown-bound semi-synchronous model. All our transformations have O(1) time complexity. One transformation uses n atomic single-writer registers and a single compare-and-swap object; another transformation uses only a single compare-and-swap object which is assumed to support also a read operation.
引用
收藏
页码:450 / 464
页数:15
相关论文
共 50 条
  • [1] Proving That Non-Blocking Algorithms Don't Block
    Gotsman, Alexey
    Cook, Byron
    Parkinson, Matthew
    Vafeiadis, Viktor
    ACM SIGPLAN NOTICES, 2009, 44 (01) : 16 - 28
  • [2] Rely/Guarantee Reasoning for Noninterference in Non-Blocking Algorithms
    Coughlin, Nicholas
    Smith, Graeme
    2020 IEEE 33RD COMPUTER SECURITY FOUNDATIONS SYMPOSIUM (CSF 2020), 2020, : 380 - 394
  • [3] Non-Blocking Technique for Parallel Algorithms with Global Barrier Synchronization
    Garza, Arturo
    Parra, Claudio A.
    Scherson, Isaac D.
    2021 INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND COMPUTATIONAL INTELLIGENCE (CSCI 2021), 2021, : 1759 - 1764
  • [4] Non-blocking Array-Based Algorithms for Stacks and Queues
    Shafiei, Niloufar
    DISTRIBUTED COMPUTING AND NETWORKING, 2009, 5408 : 55 - 66
  • [5] Explanation of two non-blocking shared-variable communication algorithms
    Bornat, Richard
    Amjad, Hasan
    FORMAL ASPECTS OF COMPUTING, 2013, 25 (06) : 893 - 931
  • [6] A non-blocking switching network and routing algorithms for on-chip networks
    Thamarakuzhi, Ajithkumar
    Chandy, John A.
    INTERNATIONAL CONFERENCE ON COMMUNICATION TECHNOLOGY AND SYSTEM DESIGN 2011, 2012, 30 : 997 - 1004
  • [7] A Methodology For Performance Analysis of Non-Blocking Algorithms Using Hardware and Software Metrics
    Izadpanah, Ramin
    Feldman, Steven
    Dechev, Damian
    2016 IEEE 19TH INTERNATIONAL SYMPOSIUM ON REAL-TIME DISTRIBUTED COMPUTING (ISORC 2016), 2016, : 43 - 52
  • [8] Efficient and non-blocking agreement protocols
    Suyash Gupta
    Mohammad Sadoghi
    Distributed and Parallel Databases, 2020, 38 : 287 - 333
  • [9] Efficient Non-blocking Radix Trees
    Velamuri, Varun
    EURO-PAR 2017: PARALLEL PROCESSING, 2017, 10417 : 565 - 579
  • [10] Efficient and non-blocking agreement protocols
    Gupta, Suyash
    Sadoghi, Mohammad
    DISTRIBUTED AND PARALLEL DATABASES, 2020, 38 (02) : 287 - 333