### Abstract

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(klog 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, log_{2r} 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(n^{2}) 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.

Original language | English (US) |
---|---|

Title of host publication | PODC'08 |

Subtitle of host publication | Proceedings of the 27th Annual ACM Symposium on Principles of Distributed Computing |

Pages | 375-384 |

Number of pages | 10 |

State | Published - Dec 17 2008 |

Externally published | Yes |

Event | 27th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing - Toronto, ON, Canada Duration: Aug 18 2008 → Aug 21 2008 |

### Publication series

Name | Proceedings of the Annual ACM Symposium on Principles of Distributed Computing |
---|

### Conference

Conference | 27th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing |
---|---|

Country | Canada |

City | Toronto, ON |

Period | 8/18/08 → 8/21/08 |

### Keywords

- Adaptation to contention
- Asynchrony
- Crashes
- Graph expansion
- Local step complexity
- Non-blocking
- Read-write shared registers
- Renaming
- Store and collect
- Wait-free

### ASJC Scopus subject areas

- Software
- Hardware and Architecture
- Computer Networks and Communications

### Cite this

*PODC'08: Proceedings of the 27th Annual ACM Symposium on Principles of Distributed Computing*(pp. 375-384). (Proceedings of the Annual ACM Symposium on Principles of Distributed Computing).

**Asynchronous exclusive selection.** / Chlebus, Bogdan S.; Kowalski, Dariusz R.

Research output: Chapter in Book/Report/Conference proceeding › Conference contribution

*PODC'08: Proceedings of the 27th Annual ACM Symposium on Principles of Distributed Computing.*Proceedings of the Annual ACM Symposium on Principles of Distributed Computing, pp. 375-384, 27th ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing, Toronto, ON, Canada, 8/18/08.

}

TY - GEN

T1 - Asynchronous exclusive selection

AU - Chlebus, Bogdan S.

AU - Kowalski, Dariusz R.

PY - 2008/12/17

Y1 - 2008/12/17

N2 - 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(klog 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.

AB - 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(klog 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.

KW - Adaptation to contention

KW - Asynchrony

KW - Crashes

KW - Graph expansion

KW - Local step complexity

KW - Non-blocking

KW - Read-write shared registers

KW - Renaming

KW - Store and collect

KW - Wait-free

UR - http://www.scopus.com/inward/record.url?scp=57549098609&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=57549098609&partnerID=8YFLogxK

M3 - Conference contribution

AN - SCOPUS:57549098609

SN - 9781595939890

T3 - Proceedings of the Annual ACM Symposium on Principles of Distributed Computing

SP - 375

EP - 384

BT - PODC'08

ER -