Back to Search
Start Over
Nontrivial and universal helping for wait-free queues and stacks.
- Source :
-
Journal of Parallel & Distributed Computing . Nov2018, Vol. 121, p1-14. 14p. - Publication Year :
- 2018
-
Abstract
- Abstract This paper studies two approaches to formalize helping in wait-free implementations of shared objects. The first approach is based on operation valency , and it allows us to make an important distinction between trivial and nontrivial helping. We show that any wait-free implementation of a queue from Test&Set requires nontrivial helping. We also define a weaker type of nontrivial helping and show that any wait-free queue implementation from a set of arbitrary base objects requires it. In contrast, there is a wait-free implementation of a stack from Test&Set with only trivial helping. These results shed light on the well-known open question of whether there exists a wait-free implementation of a queue in Common2 , and indicate why it seems to be more difficult than implementing a stack. The other approach formalizes the helping mechanism employed by Herlihy's universal wait-free construction and is based on having an operation by one process restrict the possible linearizations of operations by other processes. We show that queue and stack implementations possessing such universal helping can be used to solve consensus. This result can be used to show that a strongly linearizable (Golab et al., 2011) implementation of a queue or a stack for n processes must use objects that allow to solve consensus among n or more processes. Highlights • Two formalizations of helping are presented: nontrivial and universal. • Nontrivial helping separates queues and stacks from Test&Set primitives. • A weaker version of nontrivial helping is introduced and shown necessary in queue implementations. • Universal helping for queues and stacks is universal: it solves consensus. • Strongly linearizable queue or stack for n processes requires primitives with consensus number at least n. [ABSTRACT FROM AUTHOR]
Details
- Language :
- English
- ISSN :
- 07437315
- Volume :
- 121
- Database :
- Academic Search Index
- Journal :
- Journal of Parallel & Distributed Computing
- Publication Type :
- Academic Journal
- Accession number :
- 132870044
- Full Text :
- https://doi.org/10.1016/j.jpdc.2018.06.004