ACM Transactions on Programming Languages and Systems (TOPLAS)
Computer organization & design: the hardware/software interface
Computer organization & design: the hardware/software interface
The communication requirements of mutual exclusion
Proceedings of the seventh annual ACM symposium on Parallel algorithms and architectures
Practical implementations of non-blocking synchronization primitives
PODC '97 Proceedings of the sixteenth annual ACM symposium on Principles of distributed computing
Solution of a problem in concurrent programming control
Communications of the ACM
The Performance of Spin Lock Alternatives for Shared-Memory Multiprocessors
IEEE Transactions on Parallel and Distributed Systems
A Time Complexity Bound for Adaptive Mutual Exclusion
DISC '01 Proceedings of the 15th International Conference on Distributed Computing
An improved lower bound for the time complexity of mutual exclusion
Distributed Computing - Special issue: Selected papers from PODC '01
Local-spin Mutual Exclusion Using Fetch-and-\phi Primitives
ICDCS '03 Proceedings of the 23rd International Conference on Distributed Computing Systems
Shared-memory mutual exclusion: major research trends since 1986
Distributed Computing - Papers in celebration of the 20th anniversary of PODC
An O(1) RMRs leader election algorithm
Proceedings of the twenty-fifth 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
The Weakest Failure Detector for Message Passing Set-Agreement
DISC '08 Proceedings of the 22nd international symposium on Distributed Computing
Randomized mutual exclusion in O(log N / log log N) RMRs
Proceedings of the 28th ACM symposium on Principles of distributed computing
Adaptive randomized mutual exclusion in sub-logarithmic expected time
Proceedings of the 29th ACM SIGACT-SIGOPS symposium on Principles of distributed computing
Brief announcement: locally-accessible implementations for distributed shared memory multiprocessors
Proceedings of the 29th ACM SIGACT-SIGOPS symposium on Principles of distributed computing
An $O(1)$ RMRs Leader Election Algorithm
SIAM Journal on Computing
Linearizable implementations do not suffice for randomized distributed computation
Proceedings of the forty-third annual ACM symposium on Theory of computing
A complexity separation between the cache-coherent and distributed shared memory models
Proceedings of the 30th annual ACM SIGACT-SIGOPS symposium on Principles of distributed computing
Sub-logarithmic test-and-set against aweak adversary
DISC'11 Proceedings of the 25th international conference on Distributed computing
RMR-efficient randomized abortable mutual exclusion
DISC'12 Proceedings of the 26th international conference on Distributed Computing
Hi-index | 0.00 |
We consider asynchronous multiprocessors where processes communicate only by reading or writing shared memory. We show how to implement consensus, all comparison primitives (such as CAS and TAS), and load-linked/store-conditional using only a constant number of remote memory references (RMRs), in both the cache-coherent and the distributed-shared-memory models of such multiprocessors. Our implementations are blocking, rather than wait-free: they ensure progress provided all processes that invoke the implemented primitive are live. Our results imply that any algorithm using read and write operations, comparison primitives, and load-linked/store-conditional, can be simulated by an algorithm that uses read and write operations only, with at most a constant blowup in RMR complexity.