Title: Competitive Freshness Algorithms for Wait-free Data Objects
1Competitive Freshness Algorithms for Wait-free
Data Objects
- Peter Damaschke, Phuong Ha Philippas Tsigas
Presentation at the Euro-Par 2006 29th Aug. 1st
Sept. 2006, Dresden, Germany.
2Wait-free data objects
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- Concurrent data objects
- Consistency!
- Solutions
- Mutual exclusion?
- ? risks of lock-convoy, deadlock priority
inversion ? - Non-blocking synchronization
- Wait-free
- every operation is guaranteed to finish in a
limited number of steps. - ? Suitable for real-time systems
3Freshness
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- Reactive systems need read-operations that both
respond fast and return fresh values
e0d
4Earlier work
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- Freshness in databases
- Freshness in caching systems
- Freshness for concurrent data objects
- single-writer-to-single-reader asynch. comm.
5Contributions
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- The first paper that attacks the freshness for
multi-writer multi-reader shared objects - Competitive freshness
- An optimal deterministic algorithm
- A competitive randomized algorithm
6Road-map
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- Introduction
- Modeling the problem
- Optimal deterministic algorithm
- Nearly-optimal randomized algorithm
- Conclusions
7Model
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- Assumptions
- An upper bound D on operation execution time
- Freshness
- Constraints
and
d delay, 1 ? d ? D1 ed fresh values M
concurrent writes at e0
8Freshness as an online game
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
freshness (log)
lnD
- Online game
- player (read operation)
- vs.
- malicious adversary
X
time (log)
0
lnD
Freshness
9A deterministic algorithm
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
Algorithm The read accepts the first
Analysis
fT
fT - ?
10Lower bound
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- Adversarys strategy
- Start with cln(D)/2 decrease c at unit speed
until the player stops. At this time, - if c gt 0, c jumps to the max.
- if c ? 0, c keeps decreasing
- Case 1
- f1 - p1 ln D / 2
- Case 2
- f2 - p2 ln D / 2
- ? Comp. ratio e(f-p)
f
lnD
f1
f2
p1
lnD
0
t
11A randomized algorithm
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- Ideas
- Put a probability on the freshness c when it
starts to go down. - Algorithm
- When c is decreasing, put on it a probability
- If the game is over (i.e. hg), put the rest r on
the current c
f
lnD
g
h
a
c
0
lnD
t
t1
12A randomized algorithm
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- Competitive ratio
- Optimal randomized comp. ratio (ln D)/2,
asymptotically - (cf. TR-CS-200517)
13Conclusions
Introduction Modeling the problem Deterministic
algorithm Randomized algorithm Conclusions
- The first paper that defines the freshness
problem for wait-free data objects. - Competitive freshness
- An optimal deterministic algorithm
- A nearly-optimal randomized algorithm
- Contributions to the online search problem
- New general models
14Thank you for your attention!