## An Adaptive Collect Algorithm with Applications (2001)

### Cached

### Download Links

- [www.cs.technion.ac.il]
- [www.cs.technion.ac.il]
- [www.cs.technion.ac.il]
- DBLP

### Other Repositories/Bibliography

Venue: | Distributed Computing |

Citations: | 33 - 11 self |

### BibTeX

@ARTICLE{Attiya01anadaptive,

author = {Hagit Attiya and Arie Fouren and Eli Gafni},

title = {An Adaptive Collect Algorithm with Applications},

journal = {Distributed Computing},

year = {2001},

volume = {15},

pages = {87--96}

}

### Years of Citing Articles

### OpenURL

### Abstract

In a shared-memory distributed system, n independent asynchronous processes communicate by reading and writing to shared memory. An algorithm is adaptive (to total contention) if its step complexity depends only on the actual number, k, of active processes in the execution; this number is unknown in advance and may change in different executions of the algorithm. Adaptive algorithms are inherently wait-free, providing fault-tolerance in the presence of an arbitrary number of crash failures and different processes' speed. A wait-free adaptive collect algorithm with O(k) step complexity is presented, together with its applications in wait-free adaptive algorithms for atomic snapshots, immediate snapshots and renaming. Keywords: contention-sensitive complexity, wait-free algorithms, asynchronous sharedmemory systems, read/write registers, atomic snapshots, immediate atomic snapshots, renaming. Work supported by the fund for the promotion of research in the Technion. y Department of Computer Science, The Technion, Haifa 32000, Israel. hagit@cs.technion.ac.il. z Department of Computer Science, The Technion, Haifa 32000, Israel. leonf@cs.technion.ac.il. x Computer Science Department, UCLA. eli@cs.ucla.edu. 1

### Citations

977 | Linearizability: A correctness condition for concurrent objects
- HERLIHY, WING
- 1990
(Show Context)
Citation Context ...es should be provided: update, in which a process writes a new value, and scan, in which a process atomically collects a view. Every execution of the update and scan procedures should be linearizable =-=[27]-=-; that is, there should be a sequence containing all update and scan operations in the execution that preserves the order of nonoverlapping operations; the view returned by a scan operation contains t... |

763 | Wait-Free Synchronization
- Herlihy
- 1991
(Show Context)
Citation Context ...sters. Distributed coordination algorithms are designed to accommodate a large number of processes; in order to coordinate, processes need up-to-date information from each other. Wait-free algorithms =-=[22]-=- guarantee that a process completes its operation within a finite number of its own steps regardless of the behavior of other processes. In a typical wait-free algorithm, information is collected by r... |

233 | A Fast Mutual Exclusion Algorithm
- Lamport
- 1987
(Show Context)
Citation Context ...s collected by reading from an array indexed with process' identifiers. This scheme is an over-kill in a well-designed system, where often only few processes participate in the coordination algorithm =-=[23]-=-. Many entries are read from the array although they contain irrelevant information about processes not wishing to coordinate. An adaptive algorithm alleviates this concern and allows us to collect up... |

174 | Atomic Snapshots of Shared Memory
- Afek, Attiya, et al.
- 1990
(Show Context)
Citation Context ...ield adaptive wait-free algorithms for atomic snapshots, with O(k log k) step complexity (based on [15]) and for immediate snapshots, with O(k 3 ) step complexity (based on [7, 16]). Atomic snapshots =-=[1]-=- provide instantaneous global views of the shared memory. Immediate snapshots [17] extend atomic snapshots, and guarantee that no process obtains a view which is strictly between an update of process ... |

146 |
Generalized FLP impossibility result for t-resilient asynchronous computations
- Boroswsky, Gafni
- 1993
(Show Context)
Citation Context ...i can not obtain a view which is strictly between an update performed by another process p j and the following view p j obtains; they were used for renaming [19] and to study wait-free solvable tasks =-=[15, 18, 32]-=-. In the M-renaming problem [11], each process starts with a distinct name in some range and is required to choose a distinct name in a smaller range of size M . In the more general long-lived M-renam... |

99 |
Renaming in an Asynchronous Environment
- Attiya, Bar-Noy, et al.
- 1990
(Show Context)
Citation Context ...e snapshots [17] extend atomic snapshots, and guarantee that no process obtains a view which is strictly between an update of process p j and the following view p j obtains. In the M-renaming problem =-=[11]-=-, each process starts with a distinct name in some range and is required to choose a distinct name in a smaller range of size M . In the more general long-lived M-renaming problem [25], processes repe... |

85 |
On achieving consensus using shared memory
- Abrahamson
- 1988
(Show Context)
Citation Context ...hm (the active processes). In the collect problem [10], a process is required to collect the up-to-date values of the active processes; it is an important component in many existing algorithms, e.g., =-=[1, 14, 19, 20, 22]-=-. We present an adaptive wait-free collect algorithm whose step complexity is O(k), where k is the number of processes active in the execution. As observed by Gafni [24], any algorithm requiring f(k) ... |

76 |
Immediate Atomic Snapshots and Fast Renaming
- Borowsky, Gafni
- 1993
(Show Context)
Citation Context ...plexity (based on [15]) and for immediate snapshots, with O(k 3 ) step complexity (based on [7, 16]). Atomic snapshots [1] provide instantaneous global views of the shared memory. Immediate snapshots =-=[17]-=- extend atomic snapshots, and guarantee that no process obtains a view which is strictly between an update of process p j and the following view p j obtains. In the M-renaming problem [11], each proce... |

71 | Wait-Free Algorithms for Fast, Long-Lived Renaming
- Moir, Anderson
- 1995
(Show Context)
Citation Context ...enaming problem [11], each process starts with a distinct name in some range and is required to choose a distinct name in a smaller range of size M . In the more general long-lived M-renaming problem =-=[25]-=-, processes repeatedly acquire and release names. Adaptive versions of well-known wait-free (2k \Gamma 1)-renaming algorithms are easily obtained with adaptive atomic snapshot and immediate snapshots:... |

56 |
Wait-free made fast
- Afek, Dauber, et al.
- 1995
(Show Context)
Citation Context ...ent contention. This collect algorithm is used to extend our immediate snapshot algorithm to be long-lived and adapt to current contention [6] (with O(k 4 ) step complexity). Afek, Dauber and Touitou =-=[3]-=- introduce general methods for implementations of long-lived objects, whose step complexity is linear in the current contention; however, they use strong load-linked and store-conditional operations. ... |

54 |
Adaptive solutions to the mutual exclusion problem
- CHOY, SINGH
- 1994
(Show Context)
Citation Context ...en a single process wishes to enter the critical section, using reads and writes; when several processes compete for the critical section, the complexity depends on the range of names. Choy and Singh =-=[19]-=- present mutual exclusion algorithms, using reads and writes, which are adaptive in an amortized sense; in the worst case, the step complexity of their algorithms depends on n. (Alur and Taubenfeld [8... |

48 |
Atomic Snapshots in O(n log n) Operations
- Attiya, Rachman
- 1993
(Show Context)
Citation Context ...ve by substituting our collect algorithm. More sophisticated applications of our collect algorithms yield adaptive wait-free algorithms for atomic snapshots, with O(k log k) step complexity (based on =-=[15]-=-) and for immediate snapshots, with O(k 3 ) step complexity (based on [7, 16]). Atomic snapshots [1] provide instantaneous global views of the shared memory. Immediate snapshots [17] extend atomic sna... |

47 |
Long-lived renaming made adaptive
- AFEK, ATTIYA, et al.
- 1999
(Show Context)
Citation Context ... adapt to the current contention, that is, whose step complexity depends only on the number of currently active processes. Our collect algorithm is a building block in a long-lived renaming algorithm =-=[2, 13]-=-, whose step complexity adapts to the current contention. The long-lived renaming algorithm, in turn, is used in a collect algorithm [5] with O(k 3 ) step complexity, where k is the current contention... |

39 |
Long-lived and adaptive collect with applications
- AFEK, STUPP, et al.
- 1999
(Show Context)
Citation Context ...ithm is a building block in a long-lived renaming algorithm [2, 13], whose step complexity adapts to the current contention. The long-lived renaming algorithm, in turn, is used in a collect algorithm =-=[5]-=- with O(k 3 ) step complexity, where k is the current contention. This collect algorithm is used to extend our immediate snapshot algorithm to be long-lived and adapt to current contention [6] (with O... |

39 |
Results about fast mutual exclusion
- Alur, Taubenfeld
- 1992
(Show Context)
Citation Context ...9] present mutual exclusion algorithms, using reads and writes, which are adaptive in an amortized sense; in the worst case, the step complexity of their algorithms depends on n. (Alur and Taubenfeld =-=[8]-=- show that this is inherent.) 2 Preliminaries We consider n processes, p 1 ; : : : ; p n ; each process p i is modeled as a (possibly infinite) state machine, with a unique name, denoted id i 2 f0; : ... |

38 |
The Ambiguity of Choosing
- Burns, Peterson
- 1989
(Show Context)
Citation Context ... for (2k \Gamma 1)-renaming problem, with O(k 3 ) step complexity. An adaptive long-lived (2k \Gamma 1)-renaming algorithm can easily be derived from the `- assignment algorithm of Burns and Peterson =-=[18]-=-, using our collect algorithm. However, the step complexity of the resulting algorithm is at least exponential in k, since the step complexity of Burns and Peterson's algorithm is at least exponential... |

34 | Adaptive wait-free algorithms for lattice agreement and renaming (extended abstract
- Attiya, Fouren
- 1998
(Show Context)
Citation Context ...with exponential step complexity [18]. This paper emphasizes the modular use of collect as a simple way to make known algorithms adaptive, rather than on optimizing the step complexity. Another paper =-=[12]-=- presents efficient adaptive wait-free algorithms for lattice agreement (one-shot atomic snapshots) and (6k \Gamma 1 1)-renaming; these algorithms do not use a collect procedure and their step complex... |

25 |
Capturing the power of resiliency and set consensus in distributed systems
- Borowsky
- 1995
(Show Context)
Citation Context ...of our collect algorithms yield adaptive wait-free algorithms for atomic snapshots, with O(k log k) step complexity (based on [15]) and for immediate snapshots, with O(k 3 ) step complexity (based on =-=[7, 16]-=-). Atomic snapshots [1] provide instantaneous global views of the shared memory. Immediate snapshots [17] extend atomic snapshots, and guarantee that no process obtains a view which is strictly betwee... |

23 | The combinatorial structure of waitfree solvable tasks
- Attiya, Rajsbaum
(Show Context)
Citation Context ...i can not obtain a view which is strictly between an update performed by another process p j and the following view p j obtains; they were used for renaming [19] and to study wait-free solvable tasks =-=[15, 18, 32]-=-. In the M-renaming problem [11], each process starts with a distinct name in some range and is required to choose a distinct name in a smaller range of size M . In the more general long-lived M-renam... |

19 |
Atomic snapshots using lattice agreement
- Attiya, Herlihy, et al.
- 1993
(Show Context)
Citation Context ...separate update and store operations, we provide a combined upscan operation, which updates a new value and atomically collects a view. The returned views should satisfy the following conditions (cf. =-=[14]-=-): Validity: If an upscan operation op returns a view V , and precedes an upscan operation op 0 , then V does not include the value written by op 0 . 2 Self-inclusion: The view returned by the `th ups... |

16 | Long-lived and adaptive atomic snapshot and immediate snapshot
- AFEK, STUPP, et al.
(Show Context)
Citation Context ...gorithm [5] with O(k 3 ) step complexity, where k is the current contention. This collect algorithm is used to extend our immediate snapshot algorithm to be long-lived and adapt to current contention =-=[6]-=- (with O(k 4 ) step complexity). Afek, Dauber and Touitou [3] introduce general methods for implementations of long-lived objects, whose step complexity is linear in the current contention; however, t... |

15 | Using local-spin k-exclusion algorithms to improve wait-free object implementations
- Anderson, Moir
- 1997
(Show Context)
Citation Context ... a collect procedure and their step complexity is O(k log k). Afek and Merritt [4] use them to obtain an adaptive wait-free (2k \Gamma 1)-renaming algorithm, with O(k 2 ) step complexity. Some papers =-=[9, 24, 25]-=- study algorithms whose step complexity depends only on n, and not on the range of process' identifiers. Adaptive algorithms provide a stronger guarantee, as their step complexity adjusts to the actua... |

15 |
A partial equivalence between shared-memory and messagepassing in an asynchronous fail-stop distributed environment
- Bar-Noy, Dolev
- 1993
(Show Context)
Citation Context ...mes; clearly, the names are in a range of size k 2 . The step complexity of the algorithm is O(k 2 ). A more interesting algorithm solves (2k \Gamma 1)-renaming [11] (see its shared-memory variant in =-=[16]-=-). In this algorithm, a process scans to obtain a view and then suggests a name, based on its rank, from the set of names not already suggested in the view; the process writes its suggestion, and scan... |

14 |
wait-free (2k \Gamma 1)- renaming
- Fast
- 1998
(Show Context)
Citation Context ...ee algorithms for lattice agreement (one-shot atomic snapshots) and (6k \Gamma 1 1)-renaming; these algorithms do not use a collect procedure and their step complexity is O(k log k). Afek and Merritt =-=[4]-=- use them to obtain an adaptive wait-free (2k \Gamma 1)-renaming algorithm, with O(k 2 ) step complexity. Some papers [9, 24, 25] study algorithms whose step complexity depends only on n, and not on t... |

14 | Modular competitiveness for distributed algorithms
- ASPNES, WAARTS
- 1996
(Show Context)
Citation Context ...during the algorithm. The step complexity expression for an adaptive algorithm depends only on the number of processes that participate in the algorithm (the active processes). In the collect problem =-=[10]-=-, a process is required to collect the up-to-date values of the active processes. We present an adaptive wait-free collect algorithm whose step complexity is O(k), where k is the number of processes a... |

14 |
long-lived renaming improved and simplified
- Fast
- 1996
(Show Context)
Citation Context ... a collect procedure and their step complexity is O(k log k). Afek and Merritt [4] use them to obtain an adaptive wait-free (2k \Gamma 1)-renaming algorithm, with O(k 2 ) step complexity. Some papers =-=[9, 24, 25]-=- study algorithms whose step complexity depends only on n, and not on the range of process' identifiers. Adaptive algorithms provide a stronger guarantee, as their step complexity adjusts to the actua... |

13 |
Polynomial and adaptive long-lived (2k-1)-renaming
- ATTIYA, FOUREN
(Show Context)
Citation Context ... adapt to the current contention, that is, whose step complexity depends only on the number of currently active processes. Our collect algorithm is a building block in a long-lived renaming algorithm =-=[2, 13]-=-, whose step complexity adapts to the current contention. The long-lived renaming algorithm, in turn, is used in a collect algorithm [5] with O(k 3 ) step complexity, where k is the current contention... |

12 |
Bounded round number
- Dwork, Herlihy
- 1993
(Show Context)
Citation Context ...cesses descend down a binary tree of depth O(log n) (see below); thus, the number of stores and collect depends on n. We describe the one-shot algorithm; it can be made long-lived using techniques of =-=[14, 15, 20]-=-. The non-adaptive algorithm uses a complete binary tree of depth log n, whose vertices are labeled as a search tree, in which all values are stored in the leaves: The leaves are labeled 2 Typically, ... |

12 | long-lived renaming improved and simplified - Moir, Garay, et al. - 1996 |

9 | The instancy of snapshots and commuting objects
- AFEK, WEISBERGER
- 1999
(Show Context)
Citation Context ...of our collect algorithms yield adaptive wait-free algorithms for atomic snapshots, with O(k log k) step complexity (based on [15]) and for immediate snapshots, with O(k 3 ) step complexity (based on =-=[7, 16]-=-). Atomic snapshots [1] provide instantaneous global views of the shared memory. Immediate snapshots [17] extend atomic snapshots, and guarantee that no process obtains a view which is strictly betwee... |

6 |
private communication
- Gafni, Itai
- 1987
(Show Context)
Citation Context ...gorithms, e.g., [1, 14, 19, 20, 22]. We present an adaptive wait-free collect algorithm whose step complexity is O(k), where k is the number of processes active in the execution. As observed by Gafni =-=[24]-=-, any algorithm requiring f(k) stores and collects can be made adaptive by substituting our collect algorithm. Atomic snapshots [2] allow to obtain an instantaneous global view of the shared memory; t... |

4 |
Exponential examples for two renaming algorithms. Available at www.cs.technion.ac.il/hagit/pubs/expo.ps.gz
- Fouren
- 1999
(Show Context)
Citation Context ...g our collect algorithm. However, the step complexity of the resulting algorithm is at least exponential in k, since the step complexity of Burns and Peterson's algorithm is at least exponential in n =-=[21]-=-. A polynomial long-lived (2k \Gamma 1)-renaming algorithm, which adapts to current contention, appears in [13]. 18 Acknowledgments: We thank Yehuda Afek, Yossi Levanoni, Dan Touitou and Gideon Stupp ... |

2 |
On uniform protocols. Unpublished manuscript
- Gafni, Koutsoupias
- 1998
(Show Context)
Citation Context ...3 ) step complexity [19], and the long-lived algorithm with exponential step complexity [20]. An adaptive wait-free algorithm for one-shot immediate snapshots with O(k 4 ) step complexity appeared in =-=[25]-=-. In another paper [12], we present more efficient adaptive wait-free algorithms for lattice agreement (one-shot atomic snapshots) and (6k \Gamma 1)-renaming; these algorithms do not use a collect pro... |