TY - GEN
T1 - Poly-logarithmic adaptive algorithms require unconditional primitives
AU - Attiya, Hagit
AU - Fouren, Arie
N1 - Publisher Copyright: © Hagit Attiya and Arie Fouren.
PY - 2016/9/1
Y1 - 2016/9/1
N2 - This paper studies the step complexity of adaptive algorithms using primitives stronger than reads and writes. We first consider unconditional primitives, like fetch&inc, which modify the value of the register to which they are applied, regardless of its current value. Unconditional primitives admit snapshot algorithms with O(log k) step complexity, where k is the total or the point contention. These algorithms combine a renaming algorithm with a mechanism for propagating values so they can be quickly collected. When only conditional primitives, e.g., compare&swap or LL/SC, are used (in addition to reads and writes), we show that any collect algorithm must perform Ω(k) steps, in an execution with total contention k ∈ O(log log n). The lower bound applies for snapshot and renaming, both one-shot and long-lived. Note that there are snapshot algorithms whose step complexity is polylogarithmic in n using only reads and writes, but there are no adaptive algorithms whose step complexity is polylogarithmic in the contention, even when compare&swap and LL/SC are used.
AB - This paper studies the step complexity of adaptive algorithms using primitives stronger than reads and writes. We first consider unconditional primitives, like fetch&inc, which modify the value of the register to which they are applied, regardless of its current value. Unconditional primitives admit snapshot algorithms with O(log k) step complexity, where k is the total or the point contention. These algorithms combine a renaming algorithm with a mechanism for propagating values so they can be quickly collected. When only conditional primitives, e.g., compare&swap or LL/SC, are used (in addition to reads and writes), we show that any collect algorithm must perform Ω(k) steps, in an execution with total contention k ∈ O(log log n). The lower bound applies for snapshot and renaming, both one-shot and long-lived. Note that there are snapshot algorithms whose step complexity is polylogarithmic in n using only reads and writes, but there are no adaptive algorithms whose step complexity is polylogarithmic in the contention, even when compare&swap and LL/SC are used.
KW - Atomic snapshot
KW - Collect
KW - Compare&swap
KW - Fetch&inc
KW - Renaming
UR - http://www.scopus.com/inward/record.url?scp=85013413565&partnerID=8YFLogxK
U2 - https://doi.org/10.4230/LIPIcs.OPODIS.2015.36
DO - https://doi.org/10.4230/LIPIcs.OPODIS.2015.36
M3 - منشور من مؤتمر
T3 - Leibniz International Proceedings in Informatics, LIPIcs
SP - 36.1-36.16
BT - 19th International Conference on Principles of Distributed Systems, OPODIS 2015
A2 - Anceaume, Emmanuelle
A2 - Cachin, Christian
A2 - Potop-Butucaru, Maria
T2 - 19th International Conference on Principles of Distributed Systems, OPODIS 2015
Y2 - 14 December 2015 through 17 December 2015
ER -