Approximate counting: a detailed analysis
BIT - Ellis Horwood series in artificial intelligence
Probabilistic counting algorithms for data base applications
Journal of Computer and System Sciences
On achieving consensus using a shared memory
PODC '88 Proceedings of the seventh annual ACM Symposium on Principles of distributed computing
Linearizability: a correctness condition for concurrent objects
ACM Transactions on Programming Languages and Systems (TOPLAS)
Fast randomized consensus using shared memory
Journal of Algorithms
ACM Transactions on Programming Languages and Systems (TOPLAS)
Optimal time randomized consensus—making resilient algorithms fast in practice
SODA '91 Proceedings of the second annual ACM-SIAM symposium on Discrete algorithms
Time- and space-efficient randomized consensus
Journal of Algorithms
Impossibility of distributed consensus with one faulty process
Journal of the ACM (JACM)
Randomized Consensus in Expected O(n log^ 2 n) Operations Per Processor
SIAM Journal on Computing
Lower bounds for distributed coin-flipping and randomized consensus
Journal of the ACM (JACM)
Counting large numbers of events in small registers
Communications of the ACM
Randomized Consensus in Expected O(n²log n) Operations
WDAG '91 Proceedings of the 5th International Workshop on Distributed Algorithms
Probability and Computing: Randomized Algorithms and Probabilistic Analysis
Probability and Computing: Randomized Algorithms and Probabilistic Analysis
Linear Lower Bounds on Real-World Implementations of Concurrent Objects
FOCS '05 Proceedings of the 46th Annual IEEE Symposium on Foundations of Computer Science
Synchronizing without locks is inherently expensive
Proceedings of the twenty-fifth annual ACM symposium on Principles of distributed computing
Tight bounds for asynchronous randomized consensus
Proceedings of the thirty-ninth annual ACM symposium on Theory of computing
Unbalanced Expanders and Randomness Extractors from Parvaresh-Vardy Codes
CCC '07 Proceedings of the Twenty-Second Annual IEEE Conference on Computational Complexity
Randomized consensus in expected O(n log n) individual work
Proceedings of the twenty-seventh ACM symposium on Principles of distributed computing
Lower bounds for restricted-use objects: extended abstract
Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures
Strongly linearizable implementations: possibilities and impossibilities
PODC '12 Proceedings of the 2012 ACM symposium on Principles of distributed computing
Hi-index | 0.00 |
A new randomized asynchronous shared-memory data structure is given for implementing an approximate counter that can be incremented once by each of n processes in a model that allows up to n−1 crash failures. For any fixed &epsis;, the counter achieves a relative error of δ with high probability, at the cost of O(((1/δ) log n)O(1/&epsis;)) register operations per increment and O(n4/5+&epsis;((1/δ) log n)O(1/&epsis;)) register operations per read. The counter combines randomized sampling for estimating large values with an expander for estimating small values. This is the first counter implementation that is sublinear the number of processes and works despite a strong adversary scheduler that can observe internal states of processes. An application of the improved counter is an improved protocol for solving randomized shared-memory consensus, which reduces the best previously known individual work complexity from O(n log n) to an optimal O(n), resolving one of the last remaining open problems concerning consensus in this model.