• Keine Ergebnisse gefunden

max |L -L | << max |L -L | Gradient Clock Synchronization

N/A
N/A
Protected

Academic year: 2021

Aktie "max |L -L | << max |L -L | Gradient Clock Synchronization"

Copied!
46
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Gradient Clock Synchronization

max {v,w}ϵE |L v -L w | << max v,wϵV |L v -L w |

(2)

Today: GCS Algorithm with log. Skew

Theorem

For any μ > θ-1, there is an algorithm such that dH/dt ≤ dL/dt ≤ (1+μ)dH/dt

and the local skew is O((u+μd) log

σ

D), where

σ = μ/(θ-1).

(3)

GCS: General Approach

repeat:

1. measure skews

(to neighbors)

(4)

GCS: General Approach

repeat:

1. measure skews

(to neighbors)

2. determine range

(5)

GCS: General Approach

repeat:

1. measure skews

(to neighbors)

2. determine range

3. find midpoint

(6)

GCS: Naive Averaging Fails

repeat:

1. measure skews (to neighbors) 2. determine range 3. find midpoint

4. if behind, run faster

(else like HW clock)

(7)

GCS: Naive Averaging Fails

repeat:

1. measure skews (to neighbors) 2. determine range 3. find midpoint

4. if behind, run faster

(else like HW clock)

(8)

GCS: Naive Averaging Fails

repeat:

1. measure skews (to neighbors) 2. determine range 3. find midpoint

4. if behind, run faster

(else like HW clock)

(9)

GCS: Naive Averaging Fails

repeat:

1. measure skews (to neighbors) 2. determine range 3. find midpoint

4. if behind, run faster

(else like HW clock)

(10)

GCS: Naive Averaging Fails

problem:

Measurements

are not perfect!

(11)

GCS: Naive Averaging Fails

problem:

Measurements are not perfect!

This blurs the line

between fast and slow.

(12)

GCS: Naive Averaging Fails

problem:

Measurements are not perfect!

This blurs the line

between fast and slow.

=> system might not respond to build-up

of skew!

(13)

GCS Algorithm

idea:

discretize skews and round conservatively

=> local & limited

response to skews

(14)

GCS Algorithm

idea:

discretize skews and round conservatively

=> local & limited

response to skews

aggressive averaging

(15)

GCS Algorithm

idea:

discretize skews and round conservatively

=> local & limited

response to skews

aggressive averaging

(16)

GCS Algorithm

idea:

discretize skews and round conservatively

=> local & limited

response to skews

conservative averaging

(17)

GCS Algorithm

idea:

discretize skews and round conservatively

=> local & limited

response to skews

conservative averaging

(18)

GCS Algorithm

idea:

discretize skews and round conservatively

=> local & limited

response to skews 2κ = “height of stairs”

δ = side of square

(19)

Computing Clock Estimates

breakout session:

What‘s δ (asymptotically)?

(20)

GCS Analysis: Potential Function

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

L

v

(t) Ψ

vs

(t)

L

w

(t)

(21)

GCS Analysis: Potential Function

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

L

v

(t) Ψ

vs

(t)

L

w

(t)

leading node

(22)

GCS Analysis: Potential Function

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

L

v

(t) Ψ

vs

(t)

L

w

(t)

≤ (2s-1)κ

≥ (2s-1)κ

(23)

GCS Analysis: Potential Function

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

- estimates are ≤ actual clock values

=> slow mode trigger holds for all leading nodes

L

v

(t) Ψ

vs

(t)

L

w

(t)

≤ (2s-1)κ

≥ (2s-1)κ

(24)

GCS Analysis: Potential Function

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

- estimates are ≤ actual clock values

=> slow mode trigger holds for all leading nodes

=> Ψ

vs

(t‘) ≤ Ψ

vs

(t) + θ(t‘ – t) – (L

v

(t‘) – L

v

(t))

L

v

(t) Ψ

vs

(t)

L

w

(t)

≤ (2s-1)κ

≥ (2s-1)κ

(25)

GCS Analysis: Catching Up

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

Ψ

s

(t) = max

vϵV

vs

(t)}

Lemma:

For times

t‘ ≥ t + Ψ

s-1

(t)/μ we have

L

v

(t‘) - L

v

(t) ≥ t‘ – t + Ψ

vs

(t).

(26)

GCS Analysis: Catching Up

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

Ψ

s

(t) = max

vϵV

vs

(t)}

fix t and w that maximizes Ψ

vs

(t), and set

f

x

(t‘) = L

w

(t) + t‘ – t – L

x

(t‘) – (2s – 2)κ dist(v,w) f(t‘) = max

xϵV

{f

x

(t‘)}

L

w

(t)

f (t) L

x

(t)

L

v

(t)

trailing node

(27)

GCS Analysis: Catching Up

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

Ψ

s

(t) = max

vϵV

vs

(t)}

fix t and w that maximizes Ψ

vs

(t), and set

f

x

(t‘) = L

w

(t) + t‘ – t – L

x

(t‘) – (2s – 2)κ dist(v,w) f(t‘) = max

xϵV

{f

x

(t‘)}

L

w

(t)

f (t) L

x

(t)

L

v

(t)

(28)

GCS Analysis: Catching Up

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

Ψ

s

(t) = max

vϵV

vs

(t)}

fix t and w that maximizes Ψ

vs

(t), and set

f

x

(t‘) = L

w

(t) + t‘ – t – L

x

(t‘) – (2s – 2)κ dist(v,w) f(t‘) = max

xϵV

{f

x

(t‘)}

Ψ

vs

(t) ≤ f

v

(t)

L

w

(t)

f (t) L

x

(t)

L

v

(t)

(29)

GCS Analysis: Catching Up

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

Ψ

s

(t) = max

vϵV

vs

(t)}

fix t and w that maximizes Ψ

vs

(t), and set

f

x

(t‘) = L

w

(t) + t‘ – t – L

x

(t‘) – (2s – 2)κ dist(v,w) f(t‘) = max

xϵV

{f

x

(t‘)}

Ψ

vs

(t) ≤ f

v

(t)

f(t‘) ≤ 0 => f

v

(t‘) ≤ 0

=> L

v

(t‘) – L

v

(t) = t‘ – t + f

v

(t) ≥ t‘ – t + Ψ

vs

(t)

L

w

(t)

f (t) L

x

(t)

L

v

(t)

(30)

GCS Analysis: Catching Up

f

x

(t‘) = L

w

(t) + t‘ – t – L

x

(t‘) – (2s – 2)κ dist(v,w) f(t‘) = max

xϵV

{f

x

(t‘)}

sufficient to show:

t‘ ≥ t + Ψ

s-1

(t)/μ

=> f(t‘) ≤ 0 L f (t’)

x

(t’)

(31)

GCS Analysis: Catching Up

f

x

(t‘) = L

w

(t) + t‘ – t – L

x

(t‘) – (2s – 2)κ dist(v,w) f(t‘) = max

xϵV

{f

x

(t‘)}

sufficient to show:

t‘ ≥ t + Ψ

s-1

(t)/μ

=> f(t‘) ≤ 0 L f (t’)

x

(t’)

≥ (2s-2)κ

≤ (2s-2)κ

(32)

GCS Analysis: Catching Up

f

x

(t‘) = L

w

(t) + t‘ – t – L

x

(t‘) – (2s – 2)κ dist(v,w) f(t‘) = max

xϵV

{f

x

(t‘)}

sufficient to show:

t‘ ≥ t + Ψ

s-1

(t)/μ

=> f(t‘) ≤ 0 L f (t’)

x

(t’)

≥ (2s-2)κ

≤ (2s-2)κ

(33)

GCS Analysis: Catching Up

f

x

(t‘) = L

w

(t) + t‘ – t – L

x

(t‘) – (2s – 2)κ dist(v,w) f(t‘) = max

xϵV

{f

x

(t‘)}

sufficient to show:

t‘ ≥ t + Ψ

s-1

(t)/μ

=> f(t‘) ≤ 0

f(t) = max

xϵV

{f

x

(t)}

≤ max

xϵV

{L

w

(t) – L

x

(t) – (2s – 3)κ dist(x,w)}

≤ Ψ

s-1

(t)

f (t’) L

x

(t’)

≥ (2s-2)κ

≤ (2s-2)κ

(34)

GCS Analysis: Catching Up

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

Ψ

s

(t) = max

vϵV

vs

(t)}

Lemma:

For times

t‘ ≥ t + Ψ

s-1

(t)/μ we have

L

v

(t‘) - L

v

(t) ≥ t‘ – t + Ψ

vs

(t).

(35)

GCS Analysis: Local Skew Bound

Ψ

vs

(t) = max

wϵV

{L

w

(t) – L

v

(t) – (2s – 1)κ dist(v,w)}

Ψ

s

(t) = max

vϵV

vs

(t)}

Lemma:

For times

t‘ ≥ t + Ψ

s-1

(t)/μ we have

L

v

(t‘) - L

v

(t) ≥ t‘ – t + Ψ

vs

(t).

Theorem:

Let G upper bound the global skew and Ψ

1

(0) = 0. Then

Ψ

s

(t) ≤ G/σ

s-1

.

(36)

GCS Analysis: Proof of Local Skew Bound

Ψ

1

(t) ≤ G(t) ≤ G = G/σ

0

(37)

GCS Analysis: Proof of Local Skew Bound

Ψ

1

(t) ≤ G(t) ≤ G = G/σ

0

Recall:

Ψ

vs

(t‘) ≤ Ψ

vs

(t) + θ(t‘ – t) – (L

v

(t‘) – L

v

(t))

(38)

GCS Analysis: Proof of Local Skew Bound

Ψ

1

(t) ≤ G(t) ≤ G = G/σ

0

Recall:

Ψ

vs

(t‘) ≤ Ψ

vs

(t) + θ(t‘ – t) – (L

v

(t‘) – L

v

(t)) for t‘ ≤ G/(μσ

s-1

):

Ψ

vs

(t‘) ≤ Ψ

s

(0) + θ t‘ – (L

v

(t‘) – L

v

(0)) ≤ (θ – 1)t‘ ≤ G/σ

s

(39)

GCS Analysis: Proof of Local Skew Bound

Ψ

1

(t) ≤ G(t) ≤ G = G/σ

0

Recall:

Ψ

vs

(t‘) ≤ Ψ

vs

(t) + θ(t‘ – t) – (L

v

(t‘) – L

v

(t)) for t‘ ≤ G/(μσ

s-1

):

Ψ

vs

(t‘) ≤ Ψ

s

(0) + θ t‘ – (L

v

(t‘) – L

v

(0)) ≤ (θ – 1)t‘ ≤ G/σ

s

for t‘ > G/(μσ

s-1

) set t = t‘ – G/(μσ

s-1

) ≤ t‘ – Ψ

s-1

(t)/μ

(40)

GCS Analysis: Proof of Local Skew Bound

Ψ

1

(t) ≤ G(t) ≤ G = G/σ

0

Recall:

Ψ

vs

(t‘) ≤ Ψ

vs

(t) + θ(t‘ – t) – (L

v

(t‘) – L

v

(t)) for t‘ ≤ G/(μσ

s-2

):

Ψ

vs

(t‘) ≤ Ψ

s

(0) + θ t‘ – (L

v

(t‘) – L

v

(0)) ≤ (θ – 1)t‘ ≤ G/σ

s

for t‘ > G/(μσ

s-2

) set t = t‘– G/(μσ

s-2

) ≤ t‘ – Ψ

s-1

(t)/μ; thus Ψ

vs

(t‘) ≤ Ψ

vs

(t) + θ(t‘ – t) – (L

v

(t‘) – L

v

(t))

≤ Ψ

vs

(t) + θ(t‘ – t) – (t‘ – t + Ψ

vs

(t))

= (θ – 1)(t‘ – t) = G/σ

s-1

(41)

GCS Analysis: Skew Bounds

Theorem:

Let G upper bound the global skew and Ψ

1

(0) = 0. Then

Ψ

s

(t) ≤ G/σ

s-1

.

(42)

GCS Analysis: Skew Bounds

Theorem:

Let G upper bound the global skew and Ψ

1

(0) = 0. Then Ψ

s

(t) ≤ G/σ

s-1

.

=> L

v

(t) – L

w

(t) – (2log

σ

(G/κ) – 1)κ dist(v,w) ≤ κ

(43)

GCS Analysis: Skew Bounds

Theorem:

Let G upper bound the global skew and Ψ

1

(0) = 0. Then Ψ

s

(t) ≤ G/σ

s-1

.

=> L

v

(t) – L

w

(t) – (2log

σ

(G/κ) – 1)κ dist(v,w) ≤ κ

=> for {v,w} ϵ E: |L

v

(t) – L

w

(t)| ≤ 2κ (log

σ

(G/κ) + 1)

(44)

GCS Analysis: Skew Bounds

Theorem:

Let G upper bound the global skew and Ψ

1

(0) = 0. Then Ψ

s

(t) ≤ G/σ

s-1

.

=> L

v

(t) – L

w

(t) – (2log

σ

(G/κ) – 1)κ dist(v,w) ≤ κ

=> for {v,w} ϵ E: |L

v

(t) – L

w

(t)| ≤ 2κ (log

σ

(G/κ) + 1) Theorem:

If Ψ

1

(0) = 0, then G ≤ σκD/(σ – 1) = (1 + 1/(σ –1))κD.

(45)

GCS Analysis: Skew Bounds

Theorem:

Let G upper bound the global skew and Ψ

1

(0) = 0. Then Ψ

s

(t) ≤ G/σ

s-1

.

=> L

v

(t) – L

w

(t) – (2log

σ

(G/κ) – 1)κ dist(v,w) ≤ κ

=> for {v,w} ϵ E: |L

v

(t) – L

w

(t)| ≤ 2κ (log

σ

(G/κ) + 1) Theorem:

If Ψ

1

(0) = 0, then G ≤ σκD/(σ – 1) = (1 + 1/(σ –1))κD.

for t‘ just after skew G has been exceeded:

Ψ

v1

(t‘) ≤ (θ – 1)(t‘ – max{0, t’ – G/μ}) ≤ G/σ ≤ κD/(σ – 1)

(46)

GCS Analysis: Skew Bounds

Theorem:

Let G upper bound the global skew and Ψ

1

(0) = 0. Then Ψ

s

(t) ≤ G/σ

s-1

.

=> L

v

(t) – L

w

(t) – (2log

σ

(G/κ) – 1)κ dist(v,w) ≤ κ

=> for {v,w} ϵ E: |L

v

(t) – L

w

(t)| ≤ 2κ (log

σ

(G/κ) + 1) Theorem:

If Ψ

1

(0) = 0, then G ≤ σκD/(σ – 1) = (1 + 1/(σ –1))κD.

for t‘ just after skew G has been exceeded:

Ψ

v1

(t‘) ≤ (θ – 1)(t‘ – max{0, t’ – G/μ}) ≤ G/σ ≤ κD/(σ – 1)

=> L

v

(t’) – L

w

(t’) – κD ≤ Ψ

v1

(t‘) ≤ κD/(σ – 1)

Referenzen

ÄHNLICHE DOKUMENTE

Es gilt die folgende Tabelle, wobei im Schnittpunkt der mit X markierten Zeile und der mit Y markierten Spalte ein Z steht, falls L(Z ) = ESpl(L(X ), L(Y )) gilt. F IN REG CF CS RE F

• wenn sie unter Vereingung, Produkt, Kleene-Abschluss, nichtl¨oschenden Homomorphismen, inversen Homomorphismen und Durchschnitten mit regul¨aren Sprachen abgeschlossen ist. Die

β -Reduktion nicht korrekt anwendbar, wenn dadurch “aus Versehen” freie Variablen gebunden werden.. Definition (

lndikatoren sind Farbstoffe, welche in sauren oder basischen Lösungen die Farbe ändern. Gebräuchlich sind lndikatorflüssigkeiten und lndikatorpapiere. Saure Lösungen haben

nécessaire d’installer de carte SCSI dans votre ordinateur ; il vous suffit de connecter votre scanner à l’interface SCSI intégrée du Macintosh5. Pour utiliser correctement

So kann man sich das Leben erleichtern, besonders wenn nur zu addieren ist. Das geht am einfachsten mit dem karierten Rechenpapier aus

Zwei Lichtbewegungen, die eine ganze Wellenlänge Gangunterschied bei gleicher Schwingungsebene haben, verstärken sich.. Zwei Lichtbewegungen, die eine halbe Wellenlänge

Zwei Lichtbewegungen, die eine ganze Wellenlänge Gangunterschied bei gleicher Schwingungsebene haben, verstärken sich.. Zwei Lichtbewegungen, die eine halbe Wellenlänge