An O(1) RMRs leader election algorithm

The leader election problem is a fundamental distributed coordination problem. We present leader election algorithms for the cache-coherent (CC) and distributed shared memory (DSM) models using reads and writes only, for which the number of remote memory references (RMRs) is constant in the worst case.The algorithms use splitter-like objects [6, 8] in a novel way for the efficient partitioning of processes into disjoint sets that share work. As there is an Ω(log n/log log n) lower bound on the RMR complexity of mutual exclusion for n processes using reads and writes only [4], our result separates the mutual exclusion and leader election problems in terms of RMR complexity in both the CC and DSM models.Our result also implies that any algorithm using reads, writes and one-time test-and-set objects can be simulated by an algorithm using reads and writes with only a constant blowup of the RMR complexity. Anderson, Herman and Kim raise the question of whether conditional primitives such as test-and-set and compare-and-swap are stronger than read and write for the implementation of local-spin mutual exclusion [3]. We provide a negative answer to this question, at least for one-time test-and-set.

[1]  Nancy A. Lynch,et al.  An Ω (n log n) lower bound on the cost of mutual exclusion , 2006, PODC '06.

[2]  Edsger W. Dijkstra,et al.  Solution of a problem in concurrent programming control , 1965, CACM.

[3]  G. Taubenfeld,et al.  Results about fast mutual exclusion , 1992, [1992] Proceedings Real-Time Systems Symposium.

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

[5]  Òòòðð,et al.  Shared-memory Mutual Exclusion: Major Research Trends Since 1986 , 1986 .

[6]  Wojciech M. Golab,et al.  Constant-RMR implementations of CAS and other synchronization primitives using read and write operations , 2007, PODC '07.

[7]  Mark Moir,et al.  Wait-Free Algorithms for Fast, Long-Lived Renaming , 1995, Sci. Comput. Program..

[8]  Maurice Herlihy,et al.  Contention in shared memory algorithms , 1993, JACM.

[9]  Hagit Attiya,et al.  Adaptive and efficient mutual exclusion , 2002, PODC '00.

[10]  James H. Anderson,et al.  An improved lower bound for the time complexity of mutual exclusion , 2001, PODC '01.

[11]  Robert Cypher The communication requirements of mutual exclusion , 1995, SPAA '95.

[12]  Manhoi Choy,et al.  Adaptive solutions to the mutual exclusion problem , 1993, PODC '93.

[13]  James H. Anderson,et al.  A Time Complexity Bound for Adaptive Mutual Exclusion , 2001, DISC.

[14]  James H. Anderson,et al.  Adaptive mutual exclusion with local spinning , 2006, Distributed Computing.

[15]  James H. Anderson,et al.  Time/Contention Trade-Offs for Multiprocessor Synchronization , 1996, Inf. Comput..

[16]  Hagit Attiya,et al.  Adaptive and Efficient Algorithms for Lattice Agreement and Renaming , 2002, SIAM J. Comput..

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

[18]  James H. Anderson,et al.  Nonatomic mutual exclusion with local spinning , 2002, PODC '02.

[19]  Hyonho Lee Transformations of Mutual Exclusion Algorithms from the Cache-Coherent Model to the Distributed Shared Memory Model , 2005, 25th IEEE International Conference on Distributed Computing Systems (ICDCS'05).

[20]  Danny Hendler,et al.  Tight RMR lower bounds for mutual exclusion and other problems , 2008, STOC '08.

[21]  Eugene Styer,et al.  Tight bounds for shared memory symmetric mutual exclusion problems , 1989, PODC '89.

[22]  James H. Anderson,et al.  Adaptive Mutual Exclusion with Local Spinning , 2000, DISC.

[23]  James H. Anderson,et al.  A fine-grained solution to the mutual exclusion problem , 1993, Acta Informatica.