1 / 29

Transactional Contention Management as a Non-Clairvoyant Scheduling Problem

Transactional Contention Management as a Non-Clairvoyant Scheduling Problem. [Attiya et al. PODC 06]. [Attiya and Milani OPODIS 09]. Alessia Milani. Optimism. Transactions ( Txs ) proceed until a conflict occurs

berne
Télécharger la présentation

Transactional Contention Management as a Non-Clairvoyant Scheduling Problem

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Optimism • Transactions (Txs) proceed until a conflict occurs • T1conflicts 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

  3. Conflict ABORT Write((Z)) Read(X)0 T1 T2 Read(Y) Write(X)1 COMMIT Conservative approach • A conflict does not imply a violation of serializability • T1 and T2 can both commit without violating strict serializability

  4. 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

  5. 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?

  6. What Works and Why? In Practice [Scherer and Scott, CSJP 04] • Extensive testing • Backoff • Aging • Randomized • Various priority • … • None dominates on all benchmarks

  7. 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

  8. 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:

  9. A lower bound for CM [Attiya et al. PODC 06] Even if the contention manager is : • centralized Theorem 1. The competitive ratio of any work conserving CM is Ω(s) It always lets a maximal set of non-conflicting transactions run

  10. 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

  11. 1 2 3 … s/2 1 1 1 1 … 1 2 3 3 3 … 3 3 5 5 5 … 5  … … … …  s/2 s-1 s-1 s-1 … s-1 1 2 2 2 … 2 2 4 4 4 … 4 3 6 6 6 … 6  … … … …  s/2 s s s … s Lower Bound: First Requests Work conserving CM must select an independent set of s Txs E.g., column 1.

  12. 1 2 3 … s/2 1 1,2 1 1 … 1 2 3,2 3 3 … 3 3 5,2 5 5 … 5  … … … …  s/2 s-1,2 s-1 s-1 … s-1 1 2,1 2 2 … 2 2 4,1 4 4 … 4 3 6,1 6 6 … 6  … … … …  s/2 s,1 s s … s Lower Bound: Second Requests Odd Txs all ask for 2 Even Txs all ask for 1 Only two Txs can complete

  13. 1 2 3 … s/2 1 1,2 1,4 1 … 1 2 3,2 3,4 3 … 3 3 5,2 5,4 5 … 5  … … … …  s/2 s-1,2 s-1,4 s-1 … s-1 1 2,1 2,3 2 … 2 2 4,1 4,3 4 … 4 3 6,1 6,3 6 … 6  … … … …  s/2 s,1 s,3 2k … s Lower Bound: Next Set Similarly… Only two Txs can complete from the second independent set of s Txs

  14. 1 2 3 … s/2 1 1,2 1,4 1,6 … 1,s 2 3,2 3,4 3,6 … 3,s 3 5,2 5,4 5,6 … 5,s  … … … …  s/2 s-1,2 s-1,4 s-1,6 … s-1,s 1 2,1 2,3 2,5 … 2,s-1 2 4,1 4,3 4,5 … 4,s-1 3 6,1 6,3 6,5 … 6,s-1  … … … …  s/2 s,1 s,3 s,5 … s,s-1 Lower Bound: Repeat In general, at most two Txs from each independent set can complete

  15. 1 2 3 … s/2 1 1,2 1,4 1,6 … 1,s 2 3,2 3,4 3,6 … 3,s 3 5,2 5,4 5,6 … 5,s  … … … …  s/2 s-1,2 s-1,4 s-1,6 … s-1,s 1 2,1 2,3 2,5 … 2,s-1 2 4,1 4,3 4,5 … 4,s-1 3 6,1 6,3 6,5 … 6,s-1  … … … …  s/2 s,1 s,3 s,5 … s,s-1 Makespan of Non-Clairvoyant Scheduler After aborting, all Txs request the same data item Makespan ≈

  16. 1 2 3 … s/2 1 1,2 1,4 1,6 … 1,s 2 3,2 3,4 3,6 … 3,s 3 5,2 5,4 5,6 … 5,s  … … … …  s/2 s-1,2 s-1,4 s-1,6 … s-1,s 1 2,1 2,3 2,5 … 2,s-1 2 4,1 4,3 4,5 … 4,s-1 3 6,1 6,3 6,5 … 6,s-1  … … … …  s/2 s,1 s,3 s,5 … s,s-1 Makespan of Clairvoyant Scheduler Schedule an extended diagonal together s/2 independent Txs complete Makespan ≈ s Competitive ratio ≈s

  17. at any time, some running transaction will execute uninterrupted until it commits 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 commitproperty has O(s) competitive ratio

  18. 1 3 4 k 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 [Attiya & Milani. OPODIS 09] k+1

  19. Extending the lower bound to read-dominated workload • 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 Theorem 3. There is a read-dominated workload, s.t. the competitive ratio of any deterministic CM is Ω(s)

  20. Lower Bound : Workload … … … … … … … … …

  21. Makespan of Non-Clairvoyant Scheduler Work conserving CM must select an independent set of m Txs e.g., 1 row plus m-q read-only Txs … … … … … … … … …

  22. Makespan of Non-Clairvoyant Scheduler Only one Tx in a given row can commit Restarted Txs all request the same data item … … … … … … … … …

  23. Makespan of Non-Clairvoyant Scheduler At time q, still  q2 late-write Txs to be executed We have to execute them serially q=s/2 Makespan … … … … … … To remove the work-conserving assumption : A Tx that starts after time q is [R1…Rq R1 W1] …

  24. Makespan of the Clairvoyant Scheduler Each column is an independent set of Txs At time q, all Txs are committed q=s/2 Makespan s … … … … … … … … … Competitive ratio s

  25. 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 Theorem 4. There is a late-write workload,such that the competitive ratio of any deterministic conservative scheduler is Ω(m)

  26. 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

  27. Conflict CAR-STM scheduler Txs in execution T4 T1 T5 T2 T6 T3 T4 T6 T5 T2 Enqueued Txs T3 T5 Serialize the execution of read-only Txs • T1 is a writing Tx • T2 and T3 and T5 are read-only Txs

  28. Conflict Bimodal scheduler T3 Txs in execution T2 T1 T5 T2 T3 T5 T6 T6 T4 T5 T2 Enqueued Txs T3 T5 Read-only queue • T1 is a writing Tx • T2 and T3 and T5 are read-only Txs

  29. “Conservative” schedulers decrease performance w/ read-dominated WL Can a “smarter” scheduler do better? At what cost? Summary late-write Txs are more difficult to handle than read-only Txs & &  &  1 1 2 2 3 1 (s) [Attiya et al.] 3 (s) derived from [Attiya et al.] (m) CAR-STM, ATS, SoA O(s) Bimodal 2 (s) (m) O(m) trivial

More Related