On the minimal synchronism needed for distributed consensus
Journal of the ACM (JACM)
Upper and lower time bounds for parallel random access machines without simultaneous writes
SIAM Journal on Computing
On processor coordination using asynchronous hardware
PODC '87 Proceedings of the sixth annual ACM Symposium on Principles of distributed computing
The elusive atomic register revisited
PODC '87 Proceedings of the sixth annual ACM Symposium on Principles of distributed computing
Consensus in the presence of partial synchrony
Journal of the ACM (JACM)
On achieving consensus using a shared memory
PODC '88 Proceedings of the seventh annual ACM Symposium on Principles of distributed computing
Algorithms for parallel memory allocation
International Journal of Parallel Programming
Efficient synchronization primitives for large-scale cache-coherent multiprocessors
ASPLOS III Proceedings of the third international conference on Architectural support for programming languages and operating systems
The periodic balanced sorting network
Journal of the ACM (JACM)
Introduction to algorithms
Fast randomized consensus using shared memory
Journal of Algorithms
Time-and space-efficient randomized consensus
PODC '90 Proceedings of the ninth annual ACM symposium on Principles of distributed computing
ACM Transactions on Programming Languages and Systems (TOPLAS)
Counting networks and multi-processor coordination
STOC '91 Proceedings of the twenty-third annual ACM symposium on Theory of computing
Low contention linearizable counting
SFCS '91 Proceedings of the 32nd annual symposium on Foundations of computer science
STOC '92 Proceedings of the twenty-fourth annual ACM symposium on Theory of computing
Counting networks with arbitrary fan-out
SODA '92 Proceedings of the third annual ACM-SIAM symposium on Discrete algorithms
Low contention load balancing on large-scale multiprocessors
SPAA '92 Proceedings of the fourth annual ACM symposium on Parallel algorithms and architectures
ISTCS'92 Symposium proceedings on Theory of computing and systems
Fast, scalable synchronization with minimal hardware support
PODC '93 Proceedings of the twelfth annual ACM symposium on Principles of distributed computing
Coins, weights and contention in balancing networks
PODC '94 Proceedings of the thirteenth annual ACM symposium on Principles of distributed computing
Contention in counting networks
PODC '94 Proceedings of the thirteenth annual ACM symposium on Principles of distributed computing
Impossibility of distributed consensus with one faulty process
Journal of the ACM (JACM)
Modular competitiveness for distributed algorithms
STOC '96 Proceedings of the twenty-eighth annual ACM symposium on Theory of computing
LogP: a practical model of parallel computation
Communications of the ACM
Efficient low-contention parallel algorithms
Journal of Computer and System Sciences
The Queue-Read Queue-Write PRAM Model: Accounting for Contention in Parallel Algorithms
SIAM Journal on Computing
ACM Transactions on Programming Languages and Systems (TOPLAS)
Ethernet: distributed packet switching for local computer networks
Communications of the ACM
The Performance of Spin Lock Alternatives for Shared-Memory Multiprocessors
IEEE Transactions on Parallel and Distributed Systems
Notes on Sorting and Counting Networks (Extended Abstract)
WDAG '93 Proceedings of the 7th International Workshop on Distributed Algorithms
Another advantage of free choice (Extended Abstract): Completely asynchronous agreement protocols
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
Dynamic decentralized cache schemes for mimd parallel processors
ISCA '84 Proceedings of the 11th annual international symposium on Computer architecture
ISTCS '95 Proceedings of the 3rd Israel Symposium on the Theory of Computing Systems (ISTCS'95)
Algorithms for Scalable Synchronization on Shared-Memory Multiproceessors
Algorithms for Scalable Synchronization on Shared-Memory Multiproceessors
Adaptive solutions to the mutual exclusion problem
Distributed Computing
Modular competitiveness for distributed algorithms
STOC '96 Proceedings of the twenty-eighth annual ACM symposium on Theory of computing
Improved implementations of binary universal operations
Journal of the ACM (JACM)
Lower Bounds in Distributed Computing
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
Operation-valency and the cost of coordination
Proceedings of the twenty-second annual symposium on Principles of distributed computing
Shared-memory mutual exclusion: major research trends since 1986
Distributed Computing - Papers in celebration of the 20th anniversary of PODC
Hundreds of impossibility results for distributed computing
Distributed Computing - Papers in celebration of the 20th anniversary of PODC
Lower bounds for adaptive collect and related objects
Proceedings of the twenty-third annual ACM symposium on Principles of distributed computing
On the inherent weakness of conditional synchronization primitives
Proceedings of the twenty-third annual ACM symposium on Principles of distributed computing
Distributed Computing
Linear Lower Bounds on Real-World Implementations of Concurrent Objects
FOCS '05 Proceedings of the 46th Annual IEEE Symposium on Foundations of Computer Science
An O(1) RMRs leader election algorithm
Proceedings of the twenty-fifth annual ACM symposium on Principles of distributed computing
Synchronizing without locks is inherently expensive
Proceedings of the twenty-fifth annual ACM symposium on Principles of distributed computing
Tight bounds for shared memory systems accessed by Byzantine processes
Distributed Computing - Special issue: DISC 03
On the inherent weakness of conditional primitives
Distributed Computing - Special issue: PODC 04
Circulating shared-registers for multiprocessor systems
Journal of Systems Architecture: the EUROMICRO Journal
The cost of concurrent, low-contention Read&Modify&Write
Theoretical Computer Science - Foundations of software science and computation structures
A tight bound on remote reference time complexity of mutual exclusion in the read-modify-write model
Journal of Parallel and Distributed Computing
Combinable memory-block transactions
Proceedings of the twentieth annual symposium on Parallelism in algorithms and architectures
The complexity of obstruction-free implementations
Journal of the ACM (JACM)
Low-contention data structures
Proceedings of the twenty-second annual ACM symposium on Parallelism in algorithms and architectures
Theoretical Computer Science
Data structures in the multicore age
Communications of the ACM
An $O(1)$ RMRs Leader Election Algorithm
SIAM Journal on Computing
Low-contention data structures
Journal of Parallel and Distributed Computing
Lower bounds for restricted-use objects: extended abstract
Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures
Hi-index | 0.02 |
Most complexity measures for concurrent algorithms for asynchronous shared-memory architectures focus on process steps and memory consumption. In practice, however, performance of multiprocessor algorithms is heavily influenced by contention, the extent to which processess access the same location at the same time. Nevertheless, even though contention is one of the principal considerations affecting the performance of real algorithms on real multiprocessors, there are no formal tools for analyzing the contention of asynchronous shared-memory algorithms.This paper introduces the first formal complexity model for contention in shared-memory multiprocessors. We focus on the standard multiprocessor architecture in which n asynchronous processes communicate by applying read, write, and read-modify-write operations to a shared memory. To illustrate the utility of our model, we use it to derive two kinds of results: (1) lower bounds on contention for well-known basic problems such as agreement and mutual exclusion, and (2) trade-offs between the length of the critical path (maximal number of accesses to shared variables performed by a single process in executing the algorithm) and contention for these algorithms. Furthermore, we give the first formal contention analysis of a variety of counting networks, a class of concurrent data structures inplementing shared counters. Experiments indicate that certain counting networks outperform conventional single-variable counters at high levels of contention. Our analysis provides the first formal model explaining this phenomenon.