Transactional Contention Management as a Non-Clairvoyant Scheduling Problem Alessia Milani [Attiya...

29
Transactional Contention Management as a Non-Clairvoyant Scheduling Problem Alessia Milani [Attiya et al. PODC 06] [Attiya and Milani OPODIS 09]

Transcript of Transactional Contention Management as a Non-Clairvoyant Scheduling Problem Alessia Milani [Attiya...

Transactional Contention Managementas a Non-Clairvoyant Scheduling Problem

Alessia Milani

[Attiya et al. PODC 06]

[Attiya and Milani OPODIS 09]

Optimism

Transactions (Txs) proceed until a conflict occurs T1 conflicts with an on-going T2 if T1 tries to write

to a data item previously accessed by T2

one transaction aborts or waits for the other to complete If no conflict occurs, they run in parallel

T1 Read(X)0 Write((Z)) ABORT

T2 Write(X)1Read(Y) COMMIT

Conflict

Conservative approach

A conflict does not imply a violation of serializability

T1 and T2 can both commit without violating strict serializability

Contention manager mediates conflicts Decides which transaction aborts

E.g., the Greedy contention manager [Guerraoui et al. PODC 05] Each Tx is assigned a unique timestamp

reflecting Txs real-time order If Txs T1 and T2 conflict,

the Tx with the smaller timestamp aborts / waits

Decides when to restart aborted Txs E.g., CAR-STM [Dolev et al. PODC 08]

the aborted Tx is not executed until the completion of the conflicting Tx unrelated Txs may be executed serially

Need for a “clever” contention manager Complete the work quickly

makespan : Worst-case total time to complete all transactions

Not waste work do not repeate conflicts 

What Works and Why?

What Works and Why? In Practice [Scherer and Scott, CSJP 04]

Extensive testing Backoff Aging Randomized Various priority …

None dominates on all benchmarks

What Works and Why? In Theory Contention Management as a Scheduling

problem Evaluate the throughput, measured by the

makespan of a finite set of transactions Worst-case total time to complete all transactions

Relative to the makespan guaranteed by an optimal off-line scheduler

Non-Clairvoyant Scheduling

A scheduler A does not know Txs characteristics a priori Txs arrive one by one, and their duration is unknown

Evaluated in comparison with an optimal, clairvoyant scheduler knows the set of Txs, their data set, their release

times and duration

Competitive ratio:

maxΓ makespanA (Γ) makespanOPT (Γ)

Even if the contention manager is : centralized

A lower bound for CM

Theorem 1. The competitive ratio of any work conserving CM is Ω(s)

It always lets a maximal set of

non-conflicting transactions run

[Attiya et al. PODC 06]

Lower Bound: Workload The proof uses s2/2 transactions

s is the number of shared data items Each transactions access two data items All transactions

are available at time 0 have the same duration may have a different data set if executed at

different times or restarted

Lower Bound: First Requests

Work conserving CM must select an independent set of s Txs

E.g., column 1.

s…ssss/2

…………

6…6663

4…4442

2…2221

s-1…s-1s-1s-1s/2

…………

5…5553

3…3332

1…1111

s/2…321

Lower Bound: Second Requests

s…sss,1s/2

…………

6…666,13

4…444,12

2…222,11

s-1…s-1s-1s-1,2s/2

…………

5…555,23

3…333,22

1…111,21

s/2…321

Odd Txs all ask for 2

Even Txs all ask for 1

Only two Txs can complete

Lower Bound: Next Set

s…2ks,3s,1s/2

…………

6…66,36,13

4…44,34,12

2…22,32,11

s-1…s-1s-1,4s-1,2s/2

…………

5…55,45,23

3…33,43,22

1…11,41,21

s/2…321

Similarly…

Only two Txs can complete from the second independent set of s Txs

Lower Bound: Repeat

s,s-1…s,5s,3s,1s/2

…………

6,s-1…6,56,36,13

4,s-1…4,54,34,12

2,s-1…2,52,32,11

s-1,s…s-1,6s-1,4s-1,2s/2

…………

5,s…5,65,45,23

3,s…3,63,43,22

1,s…1,61,41,21

s/2…321

In general, at most two Txs from each independent set can complete

Makespan of Non-Clairvoyant SchedulerAfter aborting, all Txs request the same data item

Makespan ≈2

2 sss ≈⋅

s,s-1…s,5s,3s,1s/2

…………

6,s-1…6,56,36,13

4,s-1…4,54,34,12

2,s-1…2,52,32,11

s-1,s…s-1,6s-1,4s-1,2s/2

…………

5,s…5,65,45,23

3,s…3,63,43,22

1,s…1,61,41,21

s/2…321

Makespan of Clairvoyant Scheduler

Schedule an extended diagonal together

s/2 independent Txs complete

Makespan ≈ s

s,s-1…s,5s,3s,1s/2

…………

6,s-1…6,56,36,13

4,s-1…4,54,34,12

2,s-1…2,52,32,11

s-1,s…s-1,6s-1,4s-1,2s/2

…………

5,s…5,65,45,23

3,s…3,63,43,22

1,s…1,61,41,21

s/2…321

Competitive

ratio ≈ s

A matching Upper Bound

Proved for the Greedy CM [Attiya et al. PODC 06]

Relies on the fact that Txs write most of the time

Theorem 2. Any work conserving CM with the pending commit property has O(s) competitive ratio

at any time, some running transaction will execute uninterrupted until it commits

Read-Dominated Workloads Existing results hold for write-dominated workloads

Transactions need exclusive access for most of their duration (early-write transactions)

[Guerraoui et al. PODC 05, Attiya et al. PODC 06]

What about read-dominated workloads? Read-only transactions Late-write transactions

k+11 3 4 k…

[Attiya & Milani. OPODIS 09]

It holds also for CM that has a more careful approach than being conservative

Transactions : have the same duration, are available at time 0 But may have a different data set if executed at

different times or restarted

Extending the lower bound to read-dominated workload

Theorem 3. There is a read-dominated workload, s.t.

the competitive ratio of any deterministic CM is Ω(s)

Lower Bound : Workload

12…q

1R1 Rq Rq+1 Wq+1R1 Rq Rq+1 Wq+1…R1 Rq Rq+1 Wq+1

2R1 Rq Rq+2 Wq+2R1 Rq Rq+2 Wq+2…R1 Rq Rq+2 Wq+2

iR1 Rq Rq+i Wq+iR1 Rq Rq+i Wq+i…R1 Rq Rq+i Wq+i

qR1 Rq R2q W2qR1 Rq R2q W2q…R1 Rq R2q W2q

1R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

2R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

m-qR1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

……

……

… …

… …

Makespan of Non-Clairvoyant Scheduler

12…q

1R1 Rq Rq+1 Wq+1R1 Rq Rq+1 Wq+1…R1 Rq Rq+1 Wq+1

2R1 Rq Rq+2 Wq+2R1 Rq Rq+2 Wq+2…R1 Rq Rq+2 Wq+2

iR1 Rq Rq+i Wq+iR1 Rq Rq+i Wq+i…R1 Rq Rq+i Wq+i

qR1 Rq R2q W2qR1 Rq R2q W2q…R1 Rq R2q W2q

q+1R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

q+ 2R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

mR1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

……

……

… …

… …

Work conserving CM must select an independent set of m Txs

e.g., 1 row plus m-q read-only Txs

Makespan of Non-Clairvoyant Scheduler

12…q

1R1 Rq Rq+1 Wq+1R1 Rq Rq+1 Wq+1…R1 Rq Rq+1 Wq+1

2R1 Rq Rq+2 Wq+2R1 Rq Rq+2 Wq+2…R1 Rq Rq+2 Wq+2

iR1 Rq Rq+i Wq+iR1 Rq Rq+i Wq+i…R1 Rq Rq+i Wq+i

qR1 Rq R2q W2qR1 Rq R2q W2q…R1 Rq R2q W2q

q+1R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

q+ 2R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

mR1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

……

……

… …

… …

Only one Tx in a given row can commit

Restarted Txs all request the same data item

Makespan of Non-Clairvoyant Scheduler

12…q

1R1…Rq R1 W1…R1…Rq R1 W1

2R1…Rq R1 W1…R1…Rq R1 W1

iR1…Rq R1 W1…R1…Rq R1 W1

qR1…Rq R1 W1…R1…Rq R1 W1

q+1…

q+ 2…

m…

……

… …

… …

At time q, still q2 late-write Txs to be executed

We have to execute them serially

q=s/2

Makespan

s2⋅ (

s2 −1) ≈ s2

To remove the work-conserving assumption :A Tx that starts after time q is [R1…Rq R1 W1]

Makespan of the Clairvoyant Scheduler

12…q

1R1 Rq Rq+1 Wq+1R1 Rq Rq+1 Wq+1…R1 Rq Rq+1 Wq+1

2R1 Rq Rq+2 Wq+2R1 Rq Rq+2 Wq+2…R1 Rq Rq+2 Wq+2

iR1 Rq Rq+i Wq+iR1 Rq Rq+i Wq+i…R1 Rq Rq+i Wq+i

qR1 Rq R2q W2qR1 Rq R2q W2q…R1 Rq R2q W2q

q+1R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

q+ 2R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

R1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

mR1 R2 … Rq-1RqR1 R2 … Rq-1Rq…R1 R2 … Rq-1Rq

……

……

… …

… …

Each column is an independent set of Txs

At time q, all Txs are committed

q=s/2

Makespan s

Competitive ratio s

Theorem 4. There is a late-write workload,such that

the competitive ratio of any deterministic

conservative scheduler is Ω(m)

A lower bound for conservative CM

The makespan is not competitive even relative to a clairvoyant online scheduler [Dragojevic et al. PODC 09] It has complete information on a transaction as it arrives

On Bimodal Workloads If a transaction writes, it writes from the very

beginning Recent contention managers try to avoid

repeated conflicts by serializing conflicting Txs CAR-STM, Steal On Abort, ATS They are conservative

Ω(m) competitive ratio for read-dominated workloads (by Theorem 4)

also Ω(m) competitive ratio for bimodal workloads

CAR-STM scheduler

T1 T2

Conflict

T3

T2

Txs in execution

Enqueued Txs

T3

T1 is a writing Tx T2 and T3 and T5 are read-only Txs

T5T4 T6

T5 T6

T5

T4

Serialize the execution of read-only Txs

Bimodal scheduler

T1 T2

Conflict

T3

T2

Txs in execution

Enqueued TxsT3

Read-only queue

T1 is a writing Tx T2 and T3 and T5 are read-only Txs

T5T4 T6

T5 T6

T5

T2 T3 T5

(s)[Attiya et al].

(s)

(m)CAR-STM, ATS, SoA

(m)

O(s)Bimodal

(s) derived from]Attiya et al.[

O(m)trivial

WORKLOADSAny scheduler“Conservative” scheduler

WRITE-DOMINATED Early write

BIMODAL : Early write + read-only

READ-DOMINATED:

Late write + read-only

Summary

1

2

1 2 &

“Conservative” schedulers decrease performance w/ read-dominated WL

Can a “smarter” scheduler do better? At what cost?

3

& & 1 2 3

late-write Txs are more difficult to handle than read-only Txs