Tight bounds for shared memory symmetric mutual exclusion problems
Proceedings of the eighth annual ACM Symposium on Principles of distributed computing
Linearizability: a correctness condition for concurrent objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Programming Languages and Systems (TOPLAS)
The communication requirements of mutual exclusion
Proceedings of the seventh annual ACM symposium on Parallel algorithms and architectures
Wait-free algorithms for fast, long-lived renaming
Science of Computer Programming
Time/contention trade-offs for multiprocessor synchronization
Information and Computation
Contention in shared memory algorithms
Journal of the ACM (JACM)
Solution of a problem in concurrent programming control
Communications of the ACM
An improved lower bound for the time complexity of mutual exclusion
Proceedings of the twentieth annual ACM symposium on Principles of distributed computing
Nonatomic mutual exclusion with local spinning
Proceedings of the twenty-first annual symposium on Principles of distributed computing
Adaptive and Efficient Algorithms for Lattice Agreement and Renaming
SIAM Journal on Computing
Adaptive Mutual Exclusion with Local Spinning
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
A Time Complexity Bound for Adaptive Mutual Exclusion
DISC '01 Proceedings of the 15th International Conference on Distributed Computing
Adaptive and efficient mutual exclusion
Distributed Computing
Shared-memory mutual exclusion: major research trends since 1986
Distributed Computing - Papers in celebration of the 20th anniversary of PODC
ICDCS '05 Proceedings of the 25th IEEE International Conference on Distributed Computing Systems
Adaptive solutions to the mutual exclusion problem
Distributed Computing
An O(1) RMRs leader election algorithm
Proceedings of the twenty-fifth annual ACM symposium on Principles of distributed computing
An Ω (n log n) lower bound on the cost of mutual exclusion
Proceedings of the twenty-fifth annual ACM symposium on Principles of distributed computing
Proceedings of the twenty-sixth annual ACM symposium on Principles of distributed computing
Tight RMR lower bounds for mutual exclusion and other problems
STOC '08 Proceedings of the fortieth annual ACM symposium on Theory of computing
Sub-logarithmic test-and-set against aweak adversary
DISC'11 Proceedings of the 25th international conference on Distributed computing
On the time and space complexity of randomized test-and-set
PODC '12 Proceedings of the 2012 ACM symposium on Principles of distributed computing
An O(1)-barriers optimal RMRs mutual exclusion algorithm: extended abstract
Proceedings of the 2013 ACM symposium on Principles of distributed computing
Hi-index | 0.00 |
The leader election problem is a fundamental coordination problem. We present leader election algorithms for multiprocessor systems where processes communicate by reading and writing shared memory asynchronously and do not fail. In particular, we consider the cache-coherent (CC) and distributed shared memory (DSM) models of such systems. We present leader election algorithms that perform a constant number of remote memory references (RMRs) in the worst case. Our algorithms use splitter-like objects [J. Anderson and M. Moir, Sci. Comput. Programming, 25 (1995), pp. 1-39; H. Attiya and A. Fouren, Theory Comput. Syst., 31 (2001), pp. 642-664] in a novel way, by organizing active processes into teams that share work. As there is an $\Omega(\log n)$ lower bound on the RMR complexity of mutual exclusion for $n$ processes using reads and writes only [H. Attiya, D. Hendler, and W. Woelfel, in Proceedings of the ACM Symposium on Theory of Computing, ACM, New York, 2008, pp. 217-226], 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; proving this is easy in the CC model but presents subtle challenges in the DSM model, as we explain later. Anderson, Herman, and Kim raise the question of whether conditional primitives such as test-and-set and compare-and-swap can be used, along with reads and writes, to solve mutual exclusion with better worst-case RMR complexity than is possible using reads and writes only [Distributed Computing, 16 (2003), pp. 75-110]. We provide a negative answer to this question in the case of implementing one-time test-and-set.