Test-and-Set in Optimal Space

被引:5
|
作者
Giakkoupis, George [1 ]
Helmi, Maryam [2 ]
Higham, Lisa [2 ]
Woelfel, Philipp [2 ]
机构
[1] INRIA Rennes, Rennes, France
[2] Univ Calgary, Calgary, AB, Canada
基金
加拿大自然科学与工程研究理事会;
关键词
Shared Memory Model; Test-and-Set Algorithm; Space Complexity; Obstruction-free; BOUNDS;
D O I
10.1145/2746539.2746627
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The test-and-set object is a fundamental synchronization primitive for shared memory systems. This paper addresses the number of registers (supporting atomic reads and writes) required to implement a one-shot test-and-set object in the standard asynchronous shared memory model with n processes. The best lower bound is log n - 1 [12, 21] for obstruction-free and deadlock-free implementations, and recently a deterministic obstruction-free implementation using O(root n) registers was presented [11]. This paper closes the gap between these existing upper and lower bounds by presenting a deterministic obstruction free implementation of a one-shot test-and-set object from Theta(logn) registers of size Theta(logn) bits. Combining our obstruction-free algorithm with techniques from previous research [11, 12], we also obtain a randomized wait-free test and -set algorithm from Theta(logn) registers, with expected step-complexity Theta(log* n) against the oblivious adversary. The core tool in our algorithm is the implementation of a deterministic obstruction-free sifter object, using only 6 registers. If k processes access a sifter, then when they have terminated, at least one and at most [(2k + 1)/3] processes return "win" and all others return "lose".
引用
收藏
页码:615 / 623
页数:9
相关论文
共 50 条
  • [1] INDIVISIBLE TEST-AND-SET OPERATIONS FOR MICROPROCESSORS
    CIVERA, P
    DELCORSO, D
    [J]. ALTA FREQUENZA, 1980, 49 (03): : 254 - 255
  • [2] WAIT-FREE TEST-AND-SET
    AFEK, Y
    GAFNI, E
    TROMP, J
    VITANYI, PMB
    [J]. LECTURE NOTES IN COMPUTER SCIENCE, 1992, 647 : 85 - 94
  • [3] Naming Anonymous Processes Using an Optimal Number of Test-and-Set Registers
    Aldawsari, Layla S.
    [J]. ADVANCES IN INFORMATION AND COMMUNICATION, VOL 2, 2020, 1130 : 385 - 400
  • [4] Fast Randomized Test-and-Set and Renaming
    Alistarh, Dan
    Attiya, Hagit
    Gilbert, Seth
    Giurgiu, Andrei
    Guerraoui, Rachid
    [J]. DISTRIBUTED COMPUTING, 2010, 6343 : 94 - +
  • [5] Efficient randomized test-and-set implementations
    Giakkoupis, George
    Woelfel, Philipp
    [J]. DISTRIBUTED COMPUTING, 2019, 32 (06) : 565 - 586
  • [6] Efficient randomized test-and-set implementations
    George Giakkoupis
    Philipp Woelfel
    [J]. Distributed Computing, 2019, 32 : 565 - 586
  • [7] Space- and Time-Efficient Long-Lived Test-And-Set Objects
    Aghazadeh, Zahra
    Woelfel, Philipp
    [J]. PRINCIPLES OF DISTRIBUTED SYSTEMS, OPODIS 2014, 2014, 8878 : 404 - 419
  • [8] Sub-logarithmic Test-and-Set against a Weak Adversary
    Alistarh, Dan
    Aspnes, James
    [J]. DISTRIBUTED COMPUTING, 2011, 6950 : 97 - +
  • [9] Randomized two-process wait-free test-and-set
    John Tromp
    Paul Vitányi
    [J]. Distributed Computing, 2002, 15 : 127 - 135
  • [10] Randomized two-process wait-free test-and-set
    Tromp, J
    Vitányi, P
    [J]. DISTRIBUTED COMPUTING, 2002, 15 (03) : 127 - 135