40th Annual Symposium on Foundations of Computer Science (Cat. No.99CB37039) (1999)
New York, New York
Oct. 17, 1999 to Oct. 18, 1999
Yehuda Afek , Tel-Aviv University
Gideon Stupp , Tel-Aviv University
Dan Touitou , Interdisciplinary Center
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 atomic-snapshots, and l-exclusion.Following the long-lived and adaptive collect we present a more pragmatic version of collect, called active set. This algorithm is slightly weaker than the collect but has several advantages. We employ this algorithm to transform algorithms, such as the Bakery algorithm, into their corresponding adaptive long-lived version, which is more efficient than the version that was obtained with the collect.Previously, long-lived and adaptive algorithms in this model were presented only for the renaming problem Afek et. al. PODC-99. A one-shot and adaptive collect algorithm was presented by Attiya and Fouren, PODC-98.
distributed algorithms, snapshot, collect, wait-free, adaptive, long-lived, mutual-exclusion
D. Touitou, Y. Afek and G. Stupp, "Long-Lived Adaptive Collect with Applications," 40th Annual Symposium on Foundations of Computer Science (Cat. No.99CB37039)(FOCS), New York, New York, 1999, pp. 262.