Distributed Universality: Contention-Awareness, Wait-freedom, Object Progress, and Other Properties

Abstract : A notion of a universal construction suited to distributed computing has been introduced by M. Herlihy in his celebrated paper "Wait-free synchronization" (ACM TOPLAS, 1991). A universal construction is an algorithm that can be used to wait-free implement any object defined by a sequential specification. Herlihy's paper shows that the basic system model, which supports only atomic read/write registers, has to be enriched with consensus objects to allow the design of universal constructions. The generalized notion of a k-universal construction has been recently introduced by Gafni and Guerraoui (CONCUR, 2011). A k-universal construction is an algorithm that can be used to simultaneously implement k objects (instead of just one object), with the guarantee that at least one of the k constructed objects progresses forever. While Herlihy's universal construction relies on atomic registers and consensus objects, a k-universal construction relies on atomic registers and k-simultaneous consensus objects (which are wait-free equivalent to k-set agreement objects in the read/write system model). This paper significantly extends the universality results introduced by Herlihy and Gafni-Guerraoui. In particular, we present a k-universal construction which satisfies the following five desired properties, which are not satisfied by the previous k-universal construction: (1) among the k objects that are constructed, at least l objects (and not just one) are guaranteed to progress forever; (2) the progress condition for processes is wait-freedom, which means that each correct process executes an infinite number of operations on each object that progresses forever; (3) if any of the k constructed objects stops progressing, all its copies (one at each process) stop in the same state; (4) the proposed construction is contention-aware, in the sense that it uses only read/write registers in the absence of contention; and (5) it is generous with respect to the obstruction-freedom progress condition, which means that each process is able to complete any one of its pending operations on the k objects if all the other processes hold still long enough. The proposed construction, which is based on new design principles, is called a (k, l)-universal construction. It uses a natural extension of k-simultaneous consensus objects, called (k, l)-simultaneous consensus objects ((k, l)-SC). Together with atomic registers, (k, l)-SC objects are shown to be necessary and sufficient for building a (k, l)-universal construction, and, in that sense, (k, l)-SC objects are (k, l)-universal.
Liste complète des métadonnées

Cited literature [31 references]  Display  Hide  Download

https://hal.inria.fr/hal-00947657
Contributor : Julien Stainer <>
Submitted on : Monday, May 19, 2014 - 11:37:17 AM
Last modification on : Thursday, April 4, 2019 - 10:18:05 AM
Document(s) archivé(s) le : Monday, April 10, 2017 - 11:34:43 PM

File

DISC-2014-V5-RR.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-00947657, version 2

Citation

Michel Raynal, Julien Stainer, Gadi Taubenfeld. Distributed Universality: Contention-Awareness, Wait-freedom, Object Progress, and Other Properties. [Research Report] PI-2014, 2014. ⟨hal-00947657v2⟩

Share

Metrics

Record views

1199

Files downloads

233