TY - GEN
T1 - On asymmetric progress conditions
AU - Imbs, Damien
AU - Raynal, Michel
AU - Taubenfeld, Gadi
PY - 2010
Y1 - 2010
N2 - 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.
AB - 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.
KW - Asynchronous shared memory system
KW - Consensus number
KW - Fault-freedom
KW - Liveness
KW - Obstruction-freedom
KW - Process crash
KW - Progress condition
KW - Wait-freedom
UR - http://www.scopus.com/inward/record.url?scp=77956258256&partnerID=8YFLogxK
U2 - 10.1145/1835698.1835709
DO - 10.1145/1835698.1835709
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.conference???
AN - SCOPUS:77956258256
SN - 9781605588889
T3 - Proceedings of the Annual ACM Symposium on Principles of Distributed Computing
SP - 55
EP - 64
BT - PODC'10 - Proceedings of the 2010 ACM Symposium on Principles of Distributed Computing
T2 - 29th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, PODC 2010
Y2 - 25 July 2010 through 28 July 2010
ER -