Randomized mutual exclusion with sub-logarithmic RMR-complexity

Mutual exclusion is a fundamental distributed coordination problem. Shared-memory mutual exclusion research focuses on local-spin algorithms and uses the remote memory references (RMRs) metric. Attiya, Hendler, and Woelfel (40th STOC, 2008) established an Ω(log N) lower bound on the number of RMRs incurred by processes as they enter and exit the critical section, where N is the number of processes in the system. This matches the upper bound of Yang and Anderson (Distrib. Comput. 9(1):51–60, 1995). The upper and lower bounds apply for algorithms that only use read and write operations. The lower bound of Attiya et al., however, only holds for deterministic algorithms. The question of whether randomized mutual exclusion algorithms, using reads and writes only, can achieve sub-logarithmic expected RMR complexity remained open. We answer this question in the affirmative by presenting starvation-free randomized mutual exclusion algorithms for the cache coherent (CC) and the distributed shared memory (DSM) model that have sub-logarithmic expected RMR complexity against the strong adversary. More specifically, each process incurs an expected number of O(log N / log log N) RMRs per passage through the entry and exit sections, while in the worst case the number of RMRs is O(log N).

[1]  James H. Anderson,et al.  A fast, scalable mutual exclusion algorithm , 1995, Distributed Computing.

[2]  Wojciech M. Golab,et al.  Linearizable implementations do not suffice for randomized distributed computation , 2011, STOC '11.

[3]  Gadi Taubenfeld Synchronization Algorithms and Concurrent Programming , 2006 .

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

[5]  Neha Narula,et al.  Read/Write Based Fast-Path Transformation for FCFS Mutual Exclusion , 2005, SOFSEM.

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

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

[8]  Thomas E. Anderson,et al.  The Performance of Spin Lock Alternatives for Shared-Memory Multiprocessors , 1990, IEEE Trans. Parallel Distributed Syst..

[9]  James H. Anderson,et al.  Fast and Scalable Mutual Exclusion , 1999, DISC.

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

[11]  James Aspnes,et al.  Randomized protocols for asynchronous consensus , 2002, Distributed Computing.

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

[13]  Prasad Jayanti,et al.  Adaptive and efficient abortable mutual exclusion , 2003, PODC '03.

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

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

[16]  N. Meyers,et al.  H = W. , 1964, Proceedings of the National Academy of Sciences of the United States of America.

[17]  James H. Anderson,et al.  Shared-memory mutual exclusion: major research trends since 1986 , 2003, Distributed Computing.

[18]  Wojciech M. Golab,et al.  Closing the complexity gap between FCFS mutual exclusion and mutual exclusion , 2010, Distributed Computing.