disjoint access parallelism impossibility possibility and
play

Disjoint-Access Parallelism: Impossibility, Possibility, and Cost - PowerPoint PPT Presentation

Disjoint-Access Parallelism: Impossibility, Possibility, and Cost of Transactional Memory Implementations Sebastiano Peluso 1 , Roberto Palmieri 1 , Paolo Romano 2 , Binoy Ravindran 1 and Francesco Quaglia 3 3 1 2


  1. Disjoint-­‐‒Access ¡Parallelism: ¡ Impossibility, ¡Possibility, ¡ and ¡Cost ¡of ¡Transactional ¡ Memory ¡Implementations Sebastiano Peluso 1 , Roberto Palmieri 1 , Paolo Romano 2 , Binoy Ravindran 1 and Francesco Quaglia 3 3 1 2 ACM Symposium on Principles of Distributed Computing (PODC) 2015

  2. Degrees ¡of ¡Parallelism ¡ [SPAA08, ¡SPAA09] Strict Disjoint-Access Parallelism (S-DAP): Two transactions do • not contend on a common base object if they do not access any common transactional object. Weak Disjoint-Access Parallelism (W-DAP): Two transactions do • not concurrently contend on a common base object if there is no path between them in the conflict graph. x z y … locks clocks … versions W(x) S-­‐‒DAP: ¡T 1 and ¡T 3 cannot ¡contend on ¡a ¡ T 1 common ¡base ¡object. R(z) R(x) W(z) T 2 W-­‐‒DAP: ¡T 1 and ¡T 3 can ¡concurrently ¡ contend on ¡a ¡common ¡base ¡object. R(z) T 3 ACM Symposium on Principles of Distributed Computing (PODC) 2015

  3. Desirable ¡properties ¡in ¡TM Isolation ¡Level ? Non-­‐‒concurrent ¡ txs Real-­‐‒time ¡Order ¡(RTO) Parallelism Disjoint-­‐‒Access ¡ Update ¡txs parallelism ¡(DAP) Obstruction-­‐‒free ¡(OFU) Read-­‐‒only ¡txs Wait-­‐‒free ¡and Invisible ¡(WFIRO) ACM Symposium on Principles of Distributed Computing (PODC) 2015

  4. Existing ¡Impossibility ¡Results Impossibility ¡on ¡Wait-­‐‒free ¡Invisible ¡Read-­‐‒Only ¡(WFIRO) [SPAA09, ¡TCS11] ¡ (Strict) Serializability WFIRO + W-DAP + Opacity Snapshot Isolation Lower Bound: Wait-free Read-only txs should write on at least t-1 base objects when t+1 processes execute. Impossibility ¡on ¡Obstruction-­‐‒free ¡ Updates ¡(OFU) [SPAA08, ¡SPAA14] ¡ OFU + S-DAP + Serializability PCL Theorem: No TM can ensure S-DAP, Obstruction-freedom and Weak Adaptive Consistency (weaker than Snapshot Isolation and Processor Consistency). ACM Symposium on Principles of Distributed Computing (PODC) 2015

  5. Roadmap ¡of ¡Results • Impossibility Results Real-Time Order + o Wait-free Read-only Txs + WDAP + o 1. Obstruction-free Update Txs 2. Invisible Read-only Txs + Weakly Progressive Update Txs • Possibility Result Witnessable Real-Time Order + o Extended Update Serializability + o SDAP + o Wait-free Invisible Read-only Txs + o Strongly Progressive Update Transactions o • … and corresponding costs Space Complexity: Ω (min(N o ,N p )) per data-version o N p = ¡number ¡of ¡processes Time Complexity: Ω (k*N o ) per read operation o N o = ¡number ¡of ¡objects k = ¡number ¡of ¡versions ¡per ¡object

  6. What ¡about ¡Preserving ¡ Real-­‐‒Time ¡Order? Real-time order (RTO) relation: T 1 is ordered before T 2 if the commit • of T 1 precedes the begin of T 2 . Transactions should appear as executed without violating the • Real-time order [PPoPP08] . Executions Possible ¡Serialization ¡Orders T 1 T 2 T 1 T 2 T 1 T 2 T 1 T 2 T 2 T 1 T 2 T 1 ACM Symposium on Principles of Distributed Computing (PODC) 2015

  7. Impossibility ¡Results ¡on ¡ Real-­‐‒Time ¡Order W-­‐‒DAP Wait-­‐‒free ¡Read-­‐‒only ¡ Wait-­‐‒free ¡and ¡Invisible ¡ Txs Read-­‐‒only ¡Txs Obstruction-­‐‒free ¡ Weakly ¡Progressive ¡ Update ¡Txs Update ¡Txs Visible ¡Read-­‐‒only ¡Txs enable ¡S-­‐‒DAP ¡+ ¡ We ¡prove ¡that Opacity ¡ [ICDCN11] TM ¡cannot ¡preserve ¡Real-­‐‒time ¡ Order ¡(RTO) ACM Symposium on Principles of Distributed Computing (PODC) 2015

  8. Sketch ¡on ¡the ¡Impossibility: What ¡Should ¡a ¡Transaction ¡Read? [Lemma 3 simplified] WDAP TM + WFRO + RTO Read the last committed value! T 1 @p i R(x) ¡: ¡? R(x) ¡must ¡return ¡1! α β T 2 @p j W(x,1) ¡ δ γ Indistinguishable ¡to ¡ α, ¡β, ¡δ, ¡γ are ¡non-­‐‒conflicting ¡ intervals process ¡p i because ¡of ¡ • T 1 is ¡a ¡read-­‐‒only ¡transaction WDAP ¡(and ¡Lemmas ¡1, ¡2) • T 1 cannot ¡abort ¡because ¡of ¡WFRO • T * @p i R(x) ¡: ¡1 α β T 2 @p j W(x,1) ¡ δ γ Otherwise ¡RTO ¡is ¡not ¡preserved ACM Symposium on Principles of Distributed Computing (PODC) 2015

  9. Sketch ¡on ¡the ¡Impossibility: Violating ¡the ¡Real-­‐‒Time ¡Order By ¡contradiction ¡we ¡assume ¡that ¡WDAP ¡+ ¡WFRO ¡+ ¡RTO ¡is ¡possible, ¡then… Weakly ¡Progressive ¡Update ¡Txs & ¡ Obstruction-­‐‒free ¡Update ¡Txs Invisible ¡Read-­‐‒only ¡Txs T 1 commits ¡because ¡it ¡runs ¡solo ¡and ¡it ¡ • T 1 commits ¡because ¡it ¡cannot ¡detect ¡the ¡ cannot ¡wait ¡for ¡T 3 ’s ¡outcome ¡ to ¡ • conflict ¡with ¡T 3 commit T 2 commits ¡because ¡it ¡does ¡not ¡ T 2 commits ¡because ¡it ¡runs ¡solo • • encounter ¡any ¡conflict T 1 @p i W(y,1) T 2 @p j W(x,2) ¡ T 3 @p k R(y): ¡0 R(x): ¡2 R(x) ¡must ¡return ¡2 ¡because ¡of ¡Lemma ¡3 • Real-­‐‒Time ¡Order ¡violated: ¡T 2 appears ¡as ¡executed ¡before ¡T 1 ! ¡ • ACM Symposium on Principles of Distributed Computing (PODC) 2015

  10. Roadmap ¡of ¡Results • Impossibility Results Real-Time Order + o Wait-free Read-only Txs + WDAP + o 1. Obstruction-free Update Txs 2. Invisible Read-only Txs + Weakly Progressive Update Txs • Possibility Result Witnessable Real-Time Order + o Extended Update Serializability + o SDAP + o Wait-free Invisible Read-only Txs + o Strongly Progressive Update Transactions o • … and corresponding costs Space Complexity: Ω (min(N o ,N p )) per data-version o N p = ¡number ¡of ¡processes Time Complexity: Ω (k*N o ) per read operation o N o = ¡number ¡of ¡objects k = ¡number ¡of ¡versions ¡per ¡object

  11. A ¡Strictly ¡DAP ¡TM ¡Design PARALLELISM READ-ONLY UPDATES ISOLATION Wait-free Obstruction- Opacity S-DAP Invisible free Serializability Extended Strongly Wait-free W-DAP Update Progressive Serializability Weakly Visible and Consistent NO DAP Progressive No Wait-free View Witnessable Real-Time Order (WRTO) Real-Time Order preserved only among directly conflicting transactions, and transactions executed by the same process Properties of Extended Update Serializability: • o All transactions observe a serializable history (like Opacity!) o Committed Update Transactions are serializable (like Opacity!) o Two transactions T 1 , T 2 can observe two non-compatible serialization orders… o …but only if T 1 and T 2 will never commit any write operation ACM Symposium on Principles of Distributed Computing (PODC) 2015

  12. Roadmap ¡of ¡Results • Impossibility Results Real-Time Order + o Wait-free Read-only Txs + WDAP + o 1. Obstruction-free Update Txs 2. Invisible Read-only Txs + Weakly Progressive Update Txs • Possibility Result Witnessable Real-Time Order + o Extended Update Serializability + o SDAP + o Wait-free Invisible Read-only Txs + o Strongly Progressive Update Transactions o • … and corresponding costs Space Complexity: Ω (min(N o ,N p )) per data-version o N p = ¡number ¡of ¡processes Time Complexity: Ω (k*N o ) per read operation o N o = ¡number ¡of ¡objects k = ¡number ¡of ¡versions ¡per ¡object

  13. Detected ¡Costs N p = ¡number ¡of ¡processes N o = ¡number ¡of ¡objects k = ¡number ¡of ¡versions ¡per ¡object • The TM requires to store a vector clock of size N p per data-version. • A read operation by a read-only T may validate T ’s read-set to check if it can return a data-version. Space ¡Complexity O(N p ) integers ¡for ¡each ¡version ¡of ¡a ¡transactional ¡object Time ¡Complexity O(k*N o ) steps ¡to ¡execute ¡a ¡read ¡operation ¡of ¡a ¡read-­‐‒only ¡tx Are ¡these ¡costs ¡necessary? ACM Symposium on Principles of Distributed Computing (PODC) 2015

  14. Consistent ¡View Consistent View: all transactions read from a causally • consistent snapshot. It is weaker than EUS. [PPoPP08] Opacity Strict Serializability Serializability (Extended) Snapshot Update Isolation Serializability [Adya99] Forward Consistent View Consistent View ACM Symposium on Principles of Distributed Computing (PODC) 2015

  15. Lower ¡Bound ¡on ¡the ¡ Space ¡Complexity ¡ Implementation of reads: return version V if V “does not • depend on” a version V* that overwrites the read-set. Intuition ¡on ¡possible ¡S-­‐‒DAP ¡implementations T 0 @p 0 T 0 @p 0 Status ¡of ¡the ¡memory ¡per ¡ Vector ¡clock ¡of ¡size ¡ N p per ¡ data-­‐‒version data-­‐‒version W(x, ¡A) W(x, ¡A) T 1 @p 1 T 1 @p 1 R(y): ¡? R(y): ¡? R(x): ¡A p 0 1 R(x): ¡A x 1 p 1 0 y 0 T 2 @p 2 T 2 @p 2 W(x, ¡B) W(y, ¡C) W(x, ¡B) W(y, ¡C) p 2 0 x 2 x 2 p 0 1 p 0 1 overwrites overwrites y 1 y 1 p 1 0 p 1 0 ≤ p 2 1 p 2 1 ≤ Theorem. SDAP ¡TM ¡that ¡guarantees ¡WFIRO, ¡Consistent ¡ View, ¡WRTO ¡ and ¡either ¡obstruction-­‐‒free ¡ or ¡weakly ¡progressive ¡update ¡transactions The ¡space ¡complexity ¡for ¡each ¡version ¡of ¡a ¡transactional ¡object ¡is ¡ Ω(min(N o ,N p )) ACM Symposium on Principles of Distributed Computing (PODC) 2015

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend