Results 1 - 10
of
11
An Adaptive Collect Algorithm with Applications
- Distributed Computing
, 2001
"... 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 ..."
Abstract
-
Cited by 27 (10 self)
- Add to MetaCart
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
Adaptive Long-Lived Renaming Using Bounded Memory (Extended Abstract)
- PROC. OF THE 40TH IEEE ANN. SYMP. ON FOUNDATIONS OF COMPUTER SCIENCE
, 1999
"... This paper addresses the properties and design of long-lived adaptive algorithms in the read/write shared memory model. In particular we present adaptive and long-lived algorithms that adapt to the point contention of an operation while using only a bounded amount of memory. We believe the techn ..."
Abstract
-
Cited by 19 (7 self)
- Add to MetaCart
This paper addresses the properties and design of long-lived adaptive algorithms in the read/write shared memory model. In particular we present adaptive and long-lived algorithms that adapt to the point contention of an operation while using only a bounded amount of memory. We believe the techniques and building blocks developed here to be of further use in the design of adaptive and long-lived algorithms. We use the renaming problem as a test-case to demonstrate the new techniques and properties. Three new implementations of adaptive, wait-free, and long-lived renaming in the read/write shared memory model are presented. Unlike previous algorithms [1] the three algorithms require a bounded number of registers and adapt to the point contention of an operation. The two previous algorithms presented in [1] either adapt to the point contention or use a bounded size memory...
Long Lived Adaptive Splitter and Applications
, 1999
"... this paper we were able to define and implement a variant of the Moir-Anderson splitter that does not have all the properties that their splitter has but on the other hand, has an adaptive and long-lived implementation. Furthermore, we use this splitter as a building block in constructions other tha ..."
Abstract
-
Cited by 7 (1 self)
- Add to MetaCart
this paper we were able to define and implement a variant of the Moir-Anderson splitter that does not have all the properties that their splitter has but on the other hand, has an adaptive and long-lived implementation. Furthermore, we use this splitter as a building block in constructions other than a grid (for example a row of splitters or a tree of splitters) and in this way implement diverse applications such as mutual exclusion and optimal name space renaming
A General Resource Allocation Synchronization Problem
- In Proceedings of the 21st International Conference on Distributed Computing Systems (ICDCS-21
, 2001
"... We introduce a new synchronization problem called GRASP. We show that this problem is very general, in that it can provide solutions with strong properties to a wide range of previously-studied and new problems. The primary goals of this work are to unify and clarify the relationships between existi ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
We introduce a new synchronization problem called GRASP. We show that this problem is very general, in that it can provide solutions with strong properties to a wide range of previously-studied and new problems. The primary goals of this work are to unify and clarify the relationships between existing and new synchronization problems, to provide fast answers about what solutions are possible to new problems (or stronger versions of existing ones), and to provide a baseline against which to compare optimized, problem-specic solutions. We present a shared-memory solution to this problem. Our solution is based on a new solution to the Dining Philosophers problem with constant failure locality (this implies that a non-faulty process can be caused to wait indenitely only by the failure of a process within a constant number of steps of it in the graph). We use the powerful tool of wait-free transactions to simplify our solution without restricting concurrency. Email: keane@danet.com. ...
Long Lived and Adaptive Shared Memory Implementations
, 2001
"... this paper. Motivated by their first work Moir and Anderson developed renaming algorithms, in the read/write model, when such a bound on the maximum number of processes is known in advance. This led to a sequence of works on the renaming problem in this model [MA95, MG96, BGHM95] that lead to a long ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
this paper. Motivated by their first work Moir and Anderson developed renaming algorithms, in the read/write model, when such a bound on the maximum number of processes is known in advance. This led to a sequence of works on the renaming problem in this model [MA95, MG96, BGHM95] that lead to a long-lived (2K \Gamma 1)-renaming algorithm with O(K ) step complexity and O(K space complexity [Moi98]. These works employed various variants of the splitter building block which is a descendant of Lamport's adaptive mutual exclusion algorithm, however the last one [Moi98] depends on an additional work which is the first long-lived renaming algorithm by Burns and Peterson [BP89]
Adaptive Wait-Free Algorithms for Asynchronous Shared-Memory Systems
, 2001
"... ACKNOWLEDGEMENTS The generous financial help of Technion is gratefully acknowledged First of all, I thank Prof. Hagit Attiya for her excellent guidance, for knowledge, experience and time that she has given me throughout all stages of the work. Thanks to Prof. Yehuda Afek, Dr. Dan Touitou and Dr. Gi ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
ACKNOWLEDGEMENTS The generous financial help of Technion is gratefully acknowledged First of all, I thank Prof. Hagit Attiya for her excellent guidance, for knowledge, experience and time that she has given me throughout all stages of the work. Thanks to Prof. Yehuda Afek, Dr. Dan Touitou and Dr. Gideon Stupp for their friendship, help and support, particularly during the PODC98 conference. I would like to thank Prof. Eli Gafni for his insight and for very helpful discussions. I owe a depth of gratitude to Rabbi Yosef Brook who encouraged me to continue studies towards Ph.D. degree, and to Rabbi Nachum Diamont for his wise advise and help.
Long-Lived Renaming Made Adaptive (Extended Abstract)
, 1999
"... Two implementations of an adaptive, wait-free, and long-lived renaming task in the read/write shared memory model are presented. Implementations of longlived and adaptive objects were previously known only in the much stronger model of load-linked and store-conditional (i.e., read-modify-write) shar ..."
Abstract
- Add to MetaCart
Two implementations of an adaptive, wait-free, and long-lived renaming task in the read/write shared memory model are presented. Implementations of longlived and adaptive objects were previously known only in the much stronger model of load-linked and store-conditional (i.e., read-modify-write) shared memory. In read/write shared-memory only one-shot adaptive objects are known. Presented here are two algorithms that assign a new unique id in the range 1, ..., O(k²) to any process whose initial unique name is taken from a set of size N , for an arbitrary N and where k is the number of processors that actually take steps or hold a name while the new name is being acquired. The step complexity of acquiring a new name is respectively O(k²) and O(k² log k), while the step complexity of releasing a name is 1. The main differences between the two algorithms are in the prec...
Long-lived Adaptive Collect with Applications (Extended Abstract)
- In Proceedings of the 40th IEEE Symposium on Foundations of Computer Science
, 1999
"... ) Yehuda Afek Computer Science Dep., Tel-Aviv University, Israel 69978. afek@math.tau.ac.il. Gideon Stupp Computer Science Dep., Tel-Aviv University, Israel 69978. afek@math.tau.ac.il. Dan Touitou Interdisciplinary Center, Herzliya, Israel 46150. dant@idc.ac.il. Abstract A distribut ..."
Abstract
- Add to MetaCart
) Yehuda Afek Computer Science Dep., Tel-Aviv University, Israel 69978. afek@math.tau.ac.il. Gideon Stupp Computer Science Dep., Tel-Aviv University, Israel 69978. afek@math.tau.ac.il. Dan Touitou Interdisciplinary Center, Herzliya, Israel 46150. dant@idc.ac.il. Abstract A distributed algorithm is adaptive if the worst case step complexity of its operations is bounded by a function of the number of processes that are concurrently active during the operation (rather than a function of N , the total number of processes, which is usually much larger). In this paper we present long-lived and adaptive algorithms for collect in the read/write shared-memory model. Replacing the reads and writes in long-lived shared memory algorithms with our adaptive collect results in many cases in a corresponding long-lived algorithm which is adaptive. Examples of such applications, which are discussed in the paper are atomicsnapshots, and l-exclusion. Following the long-lived and adaptive...
Polynomial and Adaptive Long-lived (2k-1)-Renaming (Extended Abstract)
, 2000
"... ) Hagit Attiya and Arie Fouren Department of Computer Science, The Technion, Haifa 32000, Israel Abstract. In the long-lived M-renaming problem, processes repeatedly obtain and release new names taken from a domain of size M . This paper presents the first polynomial algorithm for long-lived (2 ..."
Abstract
- Add to MetaCart
) Hagit Attiya and Arie Fouren Department of Computer Science, The Technion, Haifa 32000, Israel Abstract. In the long-lived M-renaming problem, processes repeatedly obtain and release new names taken from a domain of size M . This paper presents the first polynomial algorithm for long-lived (2k \Gamma 1)- renaming. The algorithm is adaptive as its step complexity is O(k 4 ); here k is the point contention---the maximal number of simultaneously active processes in some point of the execution. Polynomial step complexity is achieved by having processes help each other to obtain new names, while adaptiveness is achieved by a novel application of sieves. 1 Introduction Distributed coordination algorithms are designed to accommodate a large number of processes, each with a distinct identifier. Often, only a few processes simultaneously participate in the coordination algorithm [19]. In this case, it is worthwhile to rename the participating processes [6, 21]: Before starting t...
A Polynomial Adaptive Algorithm for Long-Lived (2k - 1)-Renaming
, 2003
"... This paper presents an algorithm for long-lived renaming with optimal name space and polynomial adaptive step complexity. Processes dynamically get and release names in the range f1; : ::; 2k \Gamma 1g, where k is the maximal number of processes concurrently active (the point contention). The algori ..."
Abstract
- Add to MetaCart
This paper presents an algorithm for long-lived renaming with optimal name space and polynomial adaptive step complexity. Processes dynamically get and release names in the range f1; : ::; 2k \Gamma 1g, where k is the maximal number of processes concurrently active (the point contention). The algorithm has O(k³) step complexity, where k is the point contention. Executions with exponential step complexity are constructed for previously known long-lived renaming algorithms, thus showing that ours is the first long-lived renaming algorithm with polynomial step complexity.

