Modular competitiveness for distributed algorithms
STOC '96 Proceedings of the twenty-eighth annual ACM symposium on Theory of computing
Lower bounds for distributed coin-flipping and randomized consensus
STOC '97 Proceedings of the twenty-ninth annual ACM symposium on Theory of computing
Lower bounds for distributed coin-flipping and randomized consensus
Journal of the ACM (JACM)
Fast deterministic consensus in a noisy environment
Proceedings of the nineteenth annual ACM symposium on Principles of distributed computing
Wait-free consensus with infinite arrivals
STOC '02 Proceedings of the thiry-fourth annual ACM symposium on Theory of computing
Fast deterministic consensus in a noisy environment
Journal of Algorithms
Lower Bounds in Distributed Computing
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
On the Importance of Having an Identity or is Consensus Really Universal?
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
Hundreds of impossibility results for distributed computing
Distributed Computing - Papers in celebration of the 20th anniversary of PODC
Randomized protocols for asynchronous consensus
Distributed Computing - Papers in celebration of the 20th anniversary of PODC
Verification of the randomized consensus algorithm of Aspnes and Herlihy: a case study
Distributed Computing
Consistent and automatic replica regeneration
ACM Transactions on Storage (TOS)
Compositional competitiveness for distributed algorithms
Journal of Algorithms
On the importance of having an identity or, is consensus really universal?
Distributed Computing - Special issue: DISC 04
Tight bounds for asynchronous randomized consensus
Proceedings of the thirty-ninth annual ACM symposium on Theory of computing
Randomized consensus in expected O(n log n) individual work
Proceedings of the twenty-seventh ACM symposium on Principles of distributed computing
Tight bounds for asynchronous randomized consensus
Journal of the ACM (JACM)
Approximate shared-memory counting despite a strong adversary
SODA '09 Proceedings of the twentieth Annual ACM-SIAM Symposium on Discrete Algorithms
Locally scalable randomized consensus for synchronous crash failures
Proceedings of the twenty-first annual symposium on Parallelism in algorithms and architectures
Combining shared-coin algorithms
Journal of Parallel and Distributed Computing
Compositional competitiveness for distributed algorithms
Journal of Algorithms
Approximate shared-memory counting despite a strong adversary
ACM Transactions on Algorithms (TALG)
A modular approach to shared-memory consensus, with applications to the probabilistic-write model
Proceedings of the 29th ACM SIGACT-SIGOPS symposium on Principles of distributed computing
Fast randomized test-and-set and renaming
DISC'10 Proceedings of the 24th international conference on Distributed computing
Randomized consensus in expected O(n2) total work using single-writer registers
DISC'11 Proceedings of the 25th international conference on Distributed computing
Randomized wait-free consensus using an atomicity assumption
OPODIS'05 Proceedings of the 9th international conference on Principles of Distributed Systems
Hi-index | 0.00 |
This paper presents a new randomized algorithm for achieving consensus among asynchronous processors that communicate by reading and writing shared registers. The fastest previously known algorithm requires a processor to perform an expected $O(n^2 \log n)$ read and write operations in the worst case. In our algorithm, each processor executes at most an expected $O(n \log^2 n)$ read and write operations, which is close to the trivial lower bound of $\Omega(n)$. All previously known polynomial-time consensus algorithms were structured around a shared-coin protocol [J. Algorithms, 11 (1990), pp. 441--446] in which each processor repeatedly adds random $\pm 1$ votes to a common pool. Consequently, in all of these protocols, the worst-case expected bound on the number of read and write operations done by a single processor is asymptotically no better than the bound on the total number of read and write operations done by all of the processors together. We succeed in breaking this tradition by allowing the processors to cast votes of increasing weights. This grants the adversary greater control since he can choose from up to $n$ different weights (one for each processor) when determining the weight of the next vote to be cast. We prove that our shared-coin protocol is nevertheless correct using martingale arguments.