## An Improved Lower Bound for the Time Complexity of Mutual Exclusion (Extended Abstract) (2001)

Venue: | IN PROCEEDINGS OF THE 20TH ANNUAL ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING |

Citations: | 41 - 12 self |

### BibTeX

@INPROCEEDINGS{Anderson01animproved,

author = {James Anderson and Yong-jik Kim},

title = {An Improved Lower Bound for the Time Complexity of Mutual Exclusion (Extended Abstract)},

booktitle = {IN PROCEEDINGS OF THE 20TH ANNUAL ACM SYMPOSIUM ON PRINCIPLES OF DISTRIBUTED COMPUTING},

year = {2001},

pages = {90--99},

publisher = {}

}

### Years of Citing Articles

### OpenURL

### Abstract

We establish a lower bound of 23 N= log log N) remote memory references for N-process mutual exclusion algorithms based on reads, writes, or comparison primitives such as test-and-set and compareand -swap. Our bound improves an earlier lower bound of 32 log N= log log log N) established by Cypher. Our lower bound is of importance for two reasons. First, it almost matches the (log N) time complexity of the best-known algorithms based on reads, writes, or comparison primitives. Second, our lower bound suggests that it is likely that, from an asymptotic standpoint, comparison primitives are no better than reads and writes when implementing local-spin mutual exclusion algorithms. Thus, comparison primitives may not be the best choice to provide in hardware if one is interested in scalable synchronization.

### Citations

486 | Algorithms for scalable synchronization on shared-memory multiprocessors
- Mellor-Crummey, Scott
- 1991
(Show Context)
Citation Context ...ructions such as fetch-and-add and fetch-and-store. Several such algorithms were proposed in which only O(1) remote memory references are required for a process to enter and exit its critical section =-=[3, 7, 8]. In -=-each of these algorithms, read-modify-write instructions are used to enqueue blocked processes onto the end of a \spin queue." Performance studies presented in several papers [3, 7, 8, 11] have s... |

351 | Computer organization and design: the hardware/software interface - Patterson, Hennessy - 2009 |

288 |
Solution of a problem in concurrent programming control
- Dijkstra
- 1965
(Show Context)
Citation Context ...ide in hardware if one is interested in scalable synchronization. Work supported by NSF grants CCR 9732916, CCR 9972211, CCR 9988327, and ITR 0082866. 1 Introduction Recent work on mutual exclusion [=-=6] has -=-focused on the design of \scalable" algorithms that minimize the impact of the processor-to-memory bottleneck through the use of local spinning . A mutual exclusion algorithm is scalable if its p... |

219 |
The performance of spin lock alternatives for shared-memory multiprocessors
- Anderson
- 1990
(Show Context)
Citation Context ...ructions such as fetch-and-add and fetch-and-store. Several such algorithms were proposed in which only O(1) remote memory references are required for a process to enter and exit its critical section =-=[3, 7, 8]. In -=-each of these algorithms, read-modify-write instructions are used to enqueue blocked processes onto the end of a \spin queue." Performance studies presented in several papers [3, 7, 8, 11] have s... |

122 |
An extremal problem in graph theory
- Turán
- 1941
(Show Context)
Citation Context ... an event of some process in Z, such that e is a critical event in G. Pmt(G) Pmt(H). An event in H=(Y [RS ) is a critical event i it is also a critical event in H. The next theorem by Turan [10] will be used in proving Lemma 5. Theorem 1 (Turan) Let G = (V; E) be an undirected graph, where V is a set of vertices and E is a set of edges. If the average degree of G is d, then there exists an ... |

94 |
Synchronization algorithms for shared-memory multiprocessors
- Granunke, Thakkar
- 1990
(Show Context)
Citation Context ...ructions such as fetch-and-add and fetch-and-store. Several such algorithms were proposed in which only O(1) remote memory references are required for a process to enter and exit its critical section =-=[3, 7, 8]. In -=-each of these algorithms, read-modify-write instructions are used to enqueue blocked processes onto the end of a \spin queue." Performance studies presented in several papers [3, 7, 8, 11] have s... |

54 |
Adaptive solutions to the mutual exclusion problem
- Choy, Singh
- 1994
(Show Context)
Citation Context ...true at line 9. To prevent violations of the Exclusion property, Lock is not changed to false in this case. This idea of giving priority to processes that might otherwise wait forever is also used in =-=[7, 9]-=-. It is straightforward to formalize these arguments and prove that the algorithm of Fig. 11 is a correct, starvation-free mutual exclusion algorithm. We now prove that its time complexity is O(1) per... |

43 | Adaptive mutual exclusion with local spinning
- Anderson, Kim
- 2001
(Show Context)
Citation Context ... number of remote memory references per process is less than (log N= log log N ). We leave this issue for future research. There has been much recent interest in adaptive mutual exclusion algorithms [=-=2, 7, 9, 13, 15, 17]-=-. In such algorithms, time complexity (under some measure) is required to be a function of the number of contending processes. In recent work [13], we used proof techniques similar to those presented ... |

38 | The communication requirements of mutual exclusion
- Cypher
- 1995
(Show Context)
Citation Context ...r read/write atomicity with arbitrary write- and access-contention; such a bound would imply that their (log N) algorithm is time-optimal. Cypher was thesrst to attempt to address this open question [=-=5]-=-. He established a lower bound ofs32 log N= log log log N ), which is applicable to both distributed shared-memory systems and also systems with coherent caches. Surprisingly, his bound is applicable ... |

31 |
Improving Fast Mutual Exclusion
- Styer
- 1992
(Show Context)
Citation Context ... number of remote memory references per process is less than (log N= log log N ). We leave this issue for future research. There has been much recent interest in adaptive mutual exclusion algorithms [=-=2, 7, 9, 13, 15, 17]-=-. In such algorithms, time complexity (under some measure) is required to be a function of the number of contending processes. In recent work [13], we used proof techniques similar to those presented ... |

29 | Speeding Lamport's Fast Mutual Exclusion Algorithm
- Merritt, Taubenfeld
- 1993
(Show Context)
Citation Context ... number of remote memory references per process is less than (log N= log log N ). We leave this issue for future research. There has been much recent interest in adaptive mutual exclusion algorithms [=-=2, 7, 9, 13, 15, 17]-=-. In such algorithms, time complexity (under some measure) is required to be a function of the number of contending processes. In recent work [13], we used proof techniques similar to those presented ... |

24 | A time complexity bound for adaptive mutual exclusion
- Kim, Anderson
- 2001
(Show Context)
Citation Context |

23 |
Bounds on the shared memory requirements for long-lived and adaptive objects
- Afek, Boxer, et al.
- 2000
(Show Context)
Citation Context ... been recycled. We inductively extend the computation by recycling or killing processes | this basic proof strategy has been used previously to prove several other lower bounds for concurrent systems =-=[1, 4, 9]. In -=-each 5 According to Webster's Dictionary, nescient means \lacking knowledge or awareness." induction step, we append to each of the n active processes (except at most one) one future critical eve... |

23 |
Mutual exclusion using indivisible reads and writes
- Burns, Lynch
- 1980
(Show Context)
Citation Context ... been recycled. We inductively extend the computation by recycling or killing processes | this basic proof strategy has been used previously to prove several other lower bounds for concurrent systems =-=[1, 4, 9]. In -=-each 5 According to Webster's Dictionary, nescient means \lacking knowledge or awareness." induction step, we append to each of the n active processes (except at most one) one future critical eve... |

18 |
scalable synchronization with minimal hardware support
- Fast
- 1993
(Show Context)
Citation Context ...al section [3, 7, 8]. In each of these algorithms, read-modify-write instructions are used to enqueue blocked processes onto the end of a \spin queue." Performance studies presented in several pa=-=pers [3, 7, 8, 11]-=- have shown that these algorithms scale well as contention increases. In later work, Yang and Anderson initiated a study of time complexity bounds for local-spin synchronization algorithms, where \tim... |

16 |
Tight Bounds for Shared Memory Symmetric Mutual Exclusion Problems
- Styer, Peterson
- 1989
(Show Context)
Citation Context ... been recycled. We inductively extend the computation by recycling or killing processes | this basic proof strategy has been used previously to prove several other lower bounds for concurrent systems =-=[1, 4, 9]. In -=-each 5 According to Webster's Dictionary, nescient means \lacking knowledge or awareness." induction step, we append to each of the n active processes (except at most one) one future critical eve... |

13 | Nonatomic mutual exclusion with local spinning
- Anderson, Kim
(Show Context)
Citation Context ...me complexity is required provided N is suciently large. Deducing a precise characterization of time complexity as a function of contention is yet another interesting open issue. In other recent work =-=[4-=-], we considered algorithms in which memory is accessed by nonatomic read and write operations; such an operation executes over an interval of time and therefore several such operations by dierent pro... |

11 |
Time/contention tradeos for multiprocessor synchronization
- Anderson, Yang
- 1996
(Show Context)
Citation Context ...n increases. In later work, Yang and Anderson initiated a study of time complexity bounds for local-spin synchronization algorithms, where \time" is measured by only counting remote memory refere=-=nces [2, 1-=-1]. One of their main contributions was an N-process mutual exclusion algorithm with (log N) time complexity that uses only read and write operations [11]. In addition, they established trade-os betwe... |

8 |
Adaptive and ecient mutual exclusion
- Attiya, Bortnikov
- 2000
(Show Context)
Citation Context ...true at line 9. To prevent violations of the Exclusion property, Lock is not changed to false in this case. This idea of giving priority to processes that might otherwise wait forever is also used in =-=[7, 9]-=-. It is straightforward to formalize these arguments and prove that the algorithm of Fig. 11 is a correct, starvation-free mutual exclusion algorithm. We now prove that its time complexity is O(1) per... |

7 | Local-spin mutual exclusion using fetch-and-� primitives
- Anderson, Kim
- 2003
(Show Context)
Citation Context ...l other processes execute unsuccessful comparison events. Therefore, we now roll O(1) processes forward per variable. With this change, our asymptotic lower bound remains unchanged. In a recent paper =-=[3-=-], we showed that there exists a class of comparison primitives that includes 2VCAS for which a (log N= log log N) algorithm is possible. (To the best of our knowledge, none of the primitives in this ... |