Download presentation
Presentation is loading. Please wait.
Published byRodney Byrd Modified over 8 years ago
1
The Concurrency Hierarchy and Algorithms for Unbounded Concurrency Eli Gafni Michael Merritt Gadi Taubenfeld
2
Motivation & Overview Exploring the consequences of the a priori bound assumption on processes and concurrency Extends “Computing with infinitely many processes” [MT2000] Wait-free algorithms using atomic registers Part 1: Computability: the Concurrency Hierarchy Part 2: Algorithms: Understanding one-shot/long-lived relationships Infinity+Symmetry Adaptivity General algorithmic techniques for unbounded concurrency
3
Concurrency: Simultaneously Active Processes k -bounded – single bound k over all runs bounded – in each run an upper bound exists unbounded – finite at any point, no upper bound infinite – within a single state (not considered)
4
2 -concurrency bounded concurrency unbounded concurrency 1 -concurrency Part 1: The Concurrency Hierarchy …
5
Reminder: Snapshot algorithms e r p v a yd t s e returns {a,e,p,r,v,x} s returns {a,d,e,p,r,s,t,v,x,y} x returns {x} Every process sees itself The snapshots are nested x
6
Lemma--Any snapshot algorithm has an all-inclusive run ( n is known). p w u q t x z e j a Adaptively rename to 2k-1 names 2k-1 2n-21 2 3… …then there is a 2n-2 renaming algorithm, contradicting [HS99] Suppose not... 2k’-1 Adaptively rename to 2k’-1 names k+k’=n
7
Corollary--Any snapshot algorithm for unbounded concurrency has the following run: 7 8 9 10 5 4 63 2 1 1...... i new processes in the i’ th set
8
7 8 9 10 5 4 63 2 1 1 For bounded concurrency, the concurrency bound c limits the maximum difference between successive snapshots:...... because at most c new processes in each set
9
The Bounded Snapshot Problem: in complete runs, there is an upper bound on the difference between successive snapshots. 1 1 3 2 5 4 7 68... 9 10 1 1 3 2 5 4 7 68... 9 10 Impossible in unbounded concurrencySolvable for bounded concurrency?
10
The Concurrency Hierarchy k -concurrency ( k+1 )-concurrency bounded concurrency unbounded concurrency … bounded snapshot … k-snapshot
11
Part 2: Algorithms for Unbounded Concurrency unbounded concurrency adaptive one-shot 2k-1 renaming adaptive one-shot snapshot adaptive one-shot renaming long-lived snapshot one-shot snapshot adaptive long-lived renaming adaptive long-lived collect adaptive long-lived snapshot [AST99] [AF99, AF2000] [AST99]
12
One-shot Snapshot for Unbounded Concurrency... Use diagonalization to make long-lived.... Take a second snapshot (which must include me):...if the road goes on forever, someone paved it after driving past my house....
13
Adaptive One-shot Renaming [MA95, AF98] 0259 148 37 6 Infinite array of splitters: May not terminate...
14
Adaptive One-shot Renaming for Unbounded Concurrency via “Interleaving” Infinite array of odd-numbered splitters: 151119 3917 715 13... As soon as p i fails to acquire any name j > 2i p i takes name 2i p7p7 14
15
Adaptive One-shot Snapshot for Unbounded Concurrency....... 151119 3917 715 13... Adaptive renaming One-shot snapshot
16
Adaptive, Optimal One-shot Renaming 2k-1 one-shot renaming [BD89] collect....... 151119 3917 715 13... for Unbounded Concurrency One-shot snapshot
17
Summary 1-concurrency 2-concurrency bounded concurrency unbounded concurrency … … 2-snapshot bounded snapshot 1-snapshot a. collect a. snapshot a. 1-shot 2k-1 renaming a. renaming
18
Conclusions and Open Problems Concurrency hierarchy Algorithms for unbounded concurrency (work for unknown number/concurrency) General techniques one-shot + infinite-arrival long-lived (diagonalization) interleaving, help first, doorways Are there natural problems outside unbounded concurrency? Efficiency (space and time) Separating problems that are “tasks”
19
One-shot Renaming “black-box” Transformation A1A1 A2A2 A3A3 ApAp … … 1 0 1 1 k processes g(k) names At most k algorithms entered Eran Yahav
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.