Proceedings of the eighth annual ACM Symposium on Principles of distributed computing
Renaming in an asynchronous environment
Journal of the ACM (JACM)
ACM Transactions on Programming Languages and Systems (TOPLAS)
Atomic snapshots of shared memory
Journal of the ACM (JACM)
Immediate atomic snapshots and fast renaming
PODC '93 Proceedings of the twelfth annual ACM symposium on Principles of distributed computing
Impossibility of distributed consensus with one faulty process
Journal of the ACM (JACM)
Wait-free algorithms for fast, long-lived renaming
Science of Computer Programming
Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing
Fast, wait-free (2k-1)-renaming
Proceedings of the eighteenth annual ACM symposium on Principles of distributed computing
The topological structure of asynchronous computability
Journal of the ACM (JACM)
The concurrency hierarchy, and algorithms for unbounded concurrency
Proceedings of the twentieth 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
Randomness conductors and constant-degree lossless expanders
STOC '02 Proceedings of the thiry-fourth annual ACM symposium on Theory of computing
Adaptive and Efficient Algorithms for Lattice Agreement and Renaming
SIAM Journal on Computing
The Combinatorial Structure of Wait-Free Solvable Tasks
SIAM Journal on Computing
Time and Space Lower Bounds for Nonblocking Implementations
SIAM Journal on Computing
Fast, Long-Lived Renaming Improved and Simplified
WDAG '96 Proceedings of the 10th International Workshop on Distributed Algorithms
Computing with Infinitely Many Processes
DISC '00 Proceedings of the 14th International Conference on Distributed Computing
Efficient adaptive collect using randomization
Distributed Computing - Special issue: DISC 04
Fast randomized test-and-set and renaming
DISC'10 Proceedings of the 24th international conference on Distributed computing
Optimal-time adaptive strong renaming, with applications to counting
Proceedings of the 30th annual ACM SIGACT-SIGOPS symposium on Principles of distributed computing
Deterministic multi-channel information exchange
Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures
Hi-index | 0.00 |
The distributed setting of this paper is an asynchronous system consisting of n processes prone to crashes and a number of shared read-write registers. We consider problems regarding assigning integer values to processes in an exclusive way, in the sense that no integer is assigned to two distinct processes. In the problem of renaming, any k ≤ n processes, that hold original names from a range [N]={1,...,N}, contend to acquire unique integers as new names in a smaller range [M] using some r shared registers. When k and N are known, our wait-free solution operates in O(log k (log N + log k log log N)) local steps, for M=O(k), and with r=O(k log(N/k)) auxiliary shared registers. Processes obtain new names by exploring their neighbors in bipartite graphs of suitable expansion properties, with nodes representing names and processes competing for the name of each visited node. We show that 1+min{k-2,log2r(N/2M)} local steps are required in the worst case to wait-free solve renaming, when k and N are known and r and M are given constraints. We give a fully adaptive solution, with neither k nor N known, having M=8k-lg k-1 as a bound on the range of new names, operating in O(k) steps and using O(n2) registers. We apply renaming algorithms to obtain solutions to the Store&Collect problem. When both k and N are known, then storing can be performed in O(log k (log N + log k log log N)) steps and collecting in O(k) steps, for r=O(k log(N/k)) registers. We consider the problem Unbounded-Naming in which processes repeatedly require new names, while no name can be reused once assigned, so that infinitely many integers need to be exclusively assigned as names. For no fixed integer i can one guarantee in a wait-free manner that i is eventually assigned to be a name, so some integers may never be used; the upper bound on the number of such unused integers is used as a measure of quality of a solution. We show that Unbounded-Naming is solvable in a non-blocking way with at most n-1 integers never assigned as names, which is best possible, and in a wait-free manner with at most n(n-1) values never assigned as names.