On asymmetric progress conditions

  • Authors:
  • Damien Imbs;Michel Raynal;Gadi Taubenfeld

  • Affiliations:
  • Univesrité de Rennes, Rennes, France;Université de Rennes, Rennes, France;Interdisciplinary Center, Herzliya, Israel

  • Venue:
  • Proceedings of the 29th ACM SIGACT-SIGOPS symposium on Principles of distributed computing
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Wait-freedom and obstruction-freedom have received a lot of attention in the literature. These are symmetric progress conditions in the sense that they consider all processes as being "equal". Wait-freedom has allowed to rank the synchronization power of objects in presence of process failures, while (the weaker) obstruction-freedom allows for simpler and more efficient object implementations. This paper introduces the notion of asymmetric progress conditions. Given an object O in a shared memory system of n processes, we say that O satisfies (y,x)-liveness if O can be accessed by a subset of y n processes only, and it guarantees wait-freedom for x processes and obstruction-freedom for the remaining y-x processes. Notice that, (n,n)-liveness is wait-freedom while (n,0)-liveness is obstruction-freedom. The main contributions are: (1) an impossibility result showing that there is no (n,1)-live consensus object even if one can use underlying (n-1,n-1)-live consensus objects and registers, (2) an (n,x)-liveness hierarchy for 0 x n, and (3) an impossibility result showing that there is no consensus object for n processes that is obstruction-free with respect to all processes and fault-free with respect to a single process even if one can use underlying (n-1,n-1)-live consensus objects and registers (a process is fault-free if it always terminates when all the processes participate and there are no faults). (4) An implementation based on (x,x)-live objects that constructs a consensus object for any number of n x processes which satisfies an asymmetric group-based progress condition.