On Adaptive Renaming under Eventually Limited Contention

The adaptive M-renaming problem consists in designing an algorithm that allows a set of p ≤ n participating asynchronous processes (where n is the total number of processes) not known in advance to acquire pair-wise different new names in a name space whose size M depends on p (and not on n). Adaptive (2p - 1)-renaming algorithms for read/write shared memory systems have been designed. These algorithms, which are optimal with respect to the value of M, consider the wait-freedom progress condition, which means that any correct participant has to acquire a new name whatever the behavior of the other processes (that can be very slow or even crashed). This paper addresses the design of an adaptive M-renaming algorithm when considering the k-obstruction-freedom progress condition. This condition, that is weaker than wait-freedom, requires that every correct participating process acquires a new name in all runs where during "long enough periods" at most k processes execute steps (p-obstruction-freedom and wait-freedom are actually equivalent). The paper presents an optimal adaptive (p + k - 1)-renaming algorithm and, consequently, contributes to a better understanding of synchronization and concurrency by showing that weakening the liveness condition from wait-freedom to k-obstruction-freedom allows the new name space to be reduced from 2p - 1 to min(2p - 1, p + k - 1). Last but not least, the proposed algorithm is particularly simple, a first class property. This establishes an interesting tradeoff linking progress conditions with the size of the new name space.

[1]  Maurice Herlihy,et al.  Linearizability: a correctness condition for concurrent objects , 1990, TOPL.

[2]  Michel Raynal Locks Considered Harmful: A Look at Non-traditional Synchronization , 2008, SEUS.

[3]  Rachid Guerraoui,et al.  Partial snapshot objects , 2008, SPAA '08.

[4]  Hagit Attiya,et al.  Atomic Snapshots in O(n log n) Operations , 1998, SIAM J. Comput..

[5]  Hagit Attiya,et al.  Distributed Computing: Fundamentals, Simulations and Advanced Topics , 1998 .

[6]  Eli Gafni,et al.  Generalized FLP impossibility result for t-resilient asynchronous computations , 1993, STOC.

[7]  Gadi Taubenfeld Contention-Sensitive Data Structures and Algorithms , 2009, DISC.

[8]  Michel Raynal,et al.  In Search of the Holy Grail: Looking for the Weakest Failure Detector for Wait-Free Set Agreement , 2006, OPODIS.

[9]  Maurice Herlihy,et al.  The topological structure of asynchronous computability , 1999, JACM.

[10]  Eli Gafni,et al.  Immediate atomic snapshots and fast renaming , 1993, PODC '93.

[11]  Achour Mostéfaoui,et al.  Exploring Gafni's Reduction Land: From Omegak to Wait-Free Adaptive (2p-[p/k])-Renaming Via k-Set Agreement , 2006, DISC.

[12]  Eli Gafni,et al.  Renaming with k-Set-Consensus: An Optimal Algorithm into n + k - 1 Slots , 2006, OPODIS.

[13]  Michel Raynal,et al.  Test & Set, Adaptive Renaming and Set Agreement: a Guided Visit to Asynchronous Computability , 2007, 2007 26th IEEE International Symposium on Reliable Distributed Systems (SRDS 2007).

[14]  Achour Mostéfaoui,et al.  From adaptive renaming to set agreement , 2009, Theor. Comput. Sci..

[15]  Maurice Herlihy,et al.  Obstruction-free synchronization: double-ended queues as an example , 2003, 23rd International Conference on Distributed Computing Systems, 2003. Proceedings..

[16]  Maurice Herlihy,et al.  Wait-free synchronization , 1991, TOPL.

[17]  Hagit Attiya,et al.  Renaming in an asynchronous environment , 1990, JACM.

[18]  Rachid Guerraoui,et al.  The weakest failure detectors to boost obstruction-freedom , 2006, Distributed Computing.

[19]  Michael E. Saks,et al.  Wait-free k-set agreement is impossible: the topology of public knowledge , 1993, STOC.

[20]  Sergio Rajsbaum,et al.  New combinatorial topology upper and lower bounds for renaming , 2008, PODC '08.

[21]  Michel Raynal,et al.  Help When Needed, But No More: Efficient Read/Write Partial Snapshot , 2009, DISC.