Disjoint- Access Parallelism: Impossibility, Possibility, and Cost of Transactional Memory Implementations
|
|
- Eric Peters
- 6 years ago
- Views:
Transcription
1 Disjoint- Access Parallelism: Impossibility, Possibility, and Cost of Transactional Memory Implementations Sebastiano Peluso, Roberto Palmieri, Paolo Romano 2, Binoy Ravindran and Francesco Quaglia ACM Symposium on Principles of Distributed Computing (PODC) 25
2 Degrees of Parallelism [SPAA8, SPAA9] 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 y z locks clocks versions T 2 T W(x) R(z) R(x) W(z) R(z) T 3 ACM Symposium on Principles of Distributed Computing (PODC) 25 S- DAP: T and T 3 cannot contend on a common base object. W- DAP: T and T 3 can concurrently contend on a common base object.
3 Desirable properties in TM Isolation Level? Non- concurrent txs Parallelism Disjoint- Access parallelism (DAP) Real- time Order (RTO) Update txs Obstruction- free (OFU) ACM Symposium on Principles of Distributed Computing (PODC) 25 Read- only txs Wait- free and Invisible (WFIRO)
4 Existing Impossibility Results Impossibility on Wait- free Invisible Read- Only (WFIRO) [SPAA9, TCS] (Strict) Serializability WFIRO + W-DAP + Opacity Snapshot Isolation Lower Bound: Wait-free Read-only txs should write on at least t- base objects when t+ processes execute. Impossibility on Obstruction- free Updates (OFU) [SPAA8, SPAA4] OFU + S-DAP + ACM Symposium on Principles of Distributed Computing (PODC) 25 Serializability PCL Theorem: No TM can ensure S-DAP, Obstruction-freedom and Weak Adaptive Consistency (weaker than Snapshot Isolation and Processor Consistency).
5 Roadmap of Results Impossibility Results o Real-Time Order + o Wait-free Read-only Txs + WDAP +. Obstruction-free Update Txs 2. Invisible Read-only Txs + Weakly Progressive Update Txs Possibility Result o Witnessable Real-Time Order + o Extended Update Serializability + o SDAP + o Wait-free Invisible Read-only Txs + o Strongly Progressive Update Transactions and corresponding costs o Space Complexity: Ω(min(N o,n p )) per data-version o Time Complexity: Ω(k*N o ) per read operation N p = number of processes N o = number of objects k = number of versions per object
6 What about Preserving Real- Time Order? Real-time order (RTO) relation: T is ordered before T 2 if the commit of T precedes the begin of T 2. Transactions should appear as executed without violating the Real-time order [PPoPP8]. Executions Possible Serialization Orders T T 2 T T 2 T T T 2 T 2 T T 2 T T 2 ACM Symposium on Principles of Distributed Computing (PODC) 25
7 Impossibility Results on Real- Time Order Wait- free Read- only Txs Obstruction- free Update Txs W- DAP Wait- free and Invisible Read- only Txs Weakly Progressive Update Txs We prove that TM cannot preserve Real- time Order (RTO) Visible Read- only Txs enable S- DAP + Opacity [ICDCN] ACM Symposium on Principles of Distributed Computing (PODC) 25
8 Sketch on the Impossibility: What Should a Transaction Read? [Lemma 3 simplified] WDAP TM + WFRO + RTO Read the last committed value! i α R(x) :? β R(x) must return! T j δ W(x,) γ α, β, δ, γ are non- conflicting intervals T is a read- only transaction T cannot abort because of WFRO Indistinguishable to process p i because of WDAP (and Lemmas, 2) T i α R(x) : β T j δ W(x,) γ Otherwise RTO is not preserved ACM Symposium on Principles of Distributed Computing (PODC) 25
9 Sketch on the Impossibility: Violating the Real- Time Order By contradiction we assume that WDAP + WFRO + RTO is possible, then Obstruction- free Update Txs T commits because it runs solo and it cannot wait for T 3 s outcome to commit T 2 commits because it runs solo Weakly Progressive Update Txs & Invisible Read- only Txs T commits because it cannot detect the conflict with T 3 T 2 commits because it does not encounter any conflict i W(y,) T j W(x,2) T k R(y): R(x): 2 R(x) must return 2 because of Lemma 3 Real- Time Order violated: T 2 appears as executed before T! ACM Symposium on Principles of Distributed Computing (PODC) 25
10 Roadmap of Results Impossibility Results o Real-Time Order + o Wait-free Read-only Txs + WDAP +. Obstruction-free Update Txs 2. Invisible Read-only Txs + Weakly Progressive Update Txs Possibility Result o Witnessable Real-Time Order + o Extended Update Serializability + o SDAP + o Wait-free Invisible Read-only Txs + o Strongly Progressive Update Transactions and corresponding costs o Space Complexity: Ω(min(N o,n p )) per data-version o Time Complexity: Ω(k*N o ) per read operation N p = number of processes N o = number of objects k = number of versions per object
11 A Strictly DAP TM Design PARALLELISM S-DAP W-DAP NO DAP READ-ONLY Wait-free Invisible Wait-free Visible and No Wait-free UPDATES ACM Symposium on Principles of Distributed Computing (PODC) 25 Obstructionfree Strongly Progressive Weakly Progressive Properties of Extended Update Serializability: ISOLATION o All transactions observe a serializable history (like Opacity!) Opacity Serializability Extended Update Serializability Witnessable Real-Time Order (WRTO) Real-Time Order preserved only among directly conflicting transactions, and transactions executed by the same process o Committed Update Transactions are serializable (like Opacity!) o Two transactions T, T 2 can observe two non-compatible serialization orders o but only if T and T 2 will never commit any write operation Consistent View
12 Roadmap of Results Impossibility Results o Real-Time Order + o Wait-free Read-only Txs + WDAP +. Obstruction-free Update Txs 2. Invisible Read-only Txs + Weakly Progressive Update Txs Possibility Result o Witnessable Real-Time Order + o Extended Update Serializability + o SDAP + o Wait-free Invisible Read-only Txs + o Strongly Progressive Update Transactions and corresponding costs o Space Complexity: Ω(min(N o,n p )) per data-version o Time Complexity: Ω(k*N o ) per read operation N p = number of processes N o = number of objects k = number of versions per object
13 N p = number of processes N o = number of objects k = number of versions per object Detected Costs 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) 25
14 Consistent View Consistent View: all transactions read from a causally consistent snapshot. It is weaker than EUS. Opacity [PPoPP8] Strict Serializability Serializability Snapshot Isolation [Adya99] Forward Consistent View Consistent View ACM Symposium on Principles of Distributed Computing (PODC) 25 (Extended) Update Serializability
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. W(x, A) x y overwrites Intuition on possible S- DAP implementations R(x): A R(y):? T 2 Status of the memory per data- version W(x, B) W(y, C) x 2 y x 2 y W(x, A) p p p 2 ACM Symposium on Principles of Distributed Computing (PODC) 25 R(x): A R(y):? T 2 overwrites W(x, B) W(y, C) p p p 2 Vector clock of size N p per data- version p p p 2 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 ))
16 Proving the Time Complexity Read s objects R(x ): R(x s ): R(x No ):? W(x s ): W(x s+ ): W(x No,) Read s objects Write N o - s objects R(x ): R(x s ): R(x No ):? W(x s- ): W(x s+ ): W(x No,) Read s objects Write N o - s objects R(x ): R(x s ): R(x No ):? W(x s+ ): W(x No,) W(x s- 2 ): s histories Read s objects Write N o - s objects R(x ): R(x s ): R(x No ):? W(x s+ ): W(x No,) W(x ): Write N o - s objects ACM Symposium on Principles of Distributed Computing (PODC) 25
17 Lower Bound on the Time Complexity In a WDAP TM with invisible read-only transactions R(x No ) cannot distinguish the s histories unless it analyzes T s read-set. Consistent View + WRTO + WFIRO: T has to perform s steps to check if R(x No ) can return. s can be equal to N o - and a read can check k versions Theorem. WDAP multi- version TM that guarantees WFIRO, Consistent View, WRTO and either obstruction- free or weakly progressive update transactions The read- only time complexity is Ω(k*N o ) Read- only time complexity: the maximum number of steps performed by any read operation of any read- only transaction ACM Symposium on Principles of Distributed Computing (PODC) 25
18 Related Results Lower Bound on the Number of Visible Reads [SPAA9, TCS] Hypothesis: WDAP TM + Strict Serializability + Minimal Progressive Update txs. Result: Wait-free Read-only txs should write on at least t- base objects when t+ processes execute in a WDAP TM. Relation: The result is only a necessary condition in case Update txs are Obstruction-free since RTO cannot be preserved. The result is sufficient in case Update txs are Weakly Progressive [ICDCN]. Impossibility Result in Multi- Version- Permissive TM [PODC] Hypothesis: WDAP TM + MV-Permissiveness Result: No Strict Serializability. Relation: In a parasitic-free environment MV- Permissiveness could provide Wait- free and Invisible Read- only txs and Weakly Progressive Update Txs. In that case RTO cannot be preserved. Time Complexity in Progressive TM [PPoPP8] Hypothesis: Progressive single-version TM + Opacity Result: The maximum number of steps performed by any operation is Ω(Ν ο ) Relation: Same cost to check if a version is observable in a multi-version WDAP TM with WRTO, wait-free and invisible read-only txs and Consistent View. ACM Symposium on Principles of Distributed Computing (PODC) 25
19 Conclusions Two impossibility results ruling DAP TM that guarantees Real-Time Order and a set of desirable progress properties. Possibility result: an SDAP TM that provides a strong correctness property (i.e., EUS), Witnessable Real- Time Order, and the same set of progress properties as before. Lower bounds on the space and time complexity of such a DAP TM. Our Message In a DAP TM lowering the consistency property is not enough. Rather either invisible reads or wait-freedom must be sacrificed! ACM Symposium on Principles of Distributed Computing (PODC) 25
20 Thanks for the attention ACM Symposium on Principles of Distributed Computing (PODC) 25
21 References [Adya99] A. Adya. Weak Consistency: A Generalized Theory and Optimistic Implementations for Distributed Transactions. PhD thesis, 999. AAI8775. [ICDCN] H. Attiya and E. Hillel. Single version STMs can be multi-version permissive. In proc. of the 2th International Conference on Distributed Computing and Networking, ICDCN, 2. [PODC] [POPL9] R. Guerraoui and M. Kapalka. The Semantics of Progress in Lock-based Transactional Memory. In proc. of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages (POPL), 29. [PPoPP8] R. Guerraoui and M. Kapalka. On the Correctness of Transactional Memory. In proc. of the 3th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP), 28. [SPAA8] R. Guerraoui and M. Kapalka. On Obstruction-free Transactions. In proc. of the 2th annual Symposium on Parallelism in Algorithms and Architectures (SPAA), 28. [SPAA9] Hagit Attiya, Eshcar Hillel, and Alessia Milani. Inherent limitations on disjoint-access parallel implementations of transactional memory. In proc. of the 2st annual Symposium on Parallelism in Algorithms and Architectures (SPAA), 29. [SPAA4] Victor Bushkov, Dmytro Dziuma, Panagiota Fatourou, Rachid Guerraoui, The PCL Theorem. Transactions cannot be Parallel, Consistent and Live.. In proc. of the 26th annual Symposium on Parallelism in Algorithms and Architectures (SPAA), 24. [TCS] Hagit Attiya, Eshcar Hillel, and Alessia Milani. Inherent limitations on disjointaccess parallel implementations of transactional memory. Theory Comput. Syst., 49(4):698 79, 2. ACM Symposium on Principles of Distributed Computing (PODC) 25
22 Backup slides ACM Symposium on Principles of Distributed Computing (PODC) 25
23 Seeking a Sweet Spot in Disjoint- Access Parallel TM Objective: S-DAP + WFIRO Isolation Levels Progress Guarantees for Update Txs Opacity [PPoPP8] Strict Serializability Obstruction-free Snapshot Isolation [Adya99] Serializability Forward Consistent View (Extended) Update Serializability Strongly progressive [POPL9] Weakly progressive Consistent View ACM Symposium on Principles of Distributed Computing (PODC) 25
24 What about Preserving Real- Time Order? Real-time order (RTO) relation: T is ordered before T 2 if the commit of T precedes the begin of T 2. Transactions should appear as executed without violating the Real-time order [PPoPP8]. Examples T W(x,) T 2 W(x,2) T 3 R(x) :? T W(y,) T 2 R(y) : T 3 W(x,) R(x) :? Real-time order violated if R(x) returned. ACM Symposium on Principles of Distributed Computing (PODC) 25
25 Details about the SDAP TM N p processes = N p elements per vector clock R(x): A W(x,D) W(y,E) Committed Snapshot W(y,G) Abor t Serializable updates: locks and validation at commit- time T 2 W(z,F) T 3 R(x): A R(y): B R(z): F Current Visible Snapshot Maximum Visible Snapshot Committed Snapshot Revalidate and find that: - D invalidates the read- set - D and E are dependent Revalidate and find that: - D, E invalidate the read- set - D, E and F are concurrent x p A p D y p B p E z p C p F Causally dependent ACM Symposium on Principles of Distributed Computing (PODC) 25 Causally dependent
26 Consistent View Consistent View: all transactions read from a causally consistent snapshot. It is weaker than EUS. Forbidden Read: the read creates an oriented cycle with exactly one write-after-read edge in the conflict graph [Adya99]. Example R(x): R(z): 4 T 2 W(x,2) W(y,3) T 3 R(y): 3 W(z,4) T WR T 2 T 3 WR ACM Symposium on Principles of Distributed Computing (PODC) 25
Transactions are Back but How Different They Are?
Transactions are Back but How Different They Are? Relating STM and Databases Consistency Conditions (Preliminary Version) Hagit Attiya Technion hagit@cs.technion.ac.il Sandeep Hans Technion sandeep@cs.technion.ac.il
More informationOn Maintaining Multiple Versions in STM
On Maintaining Multiple Versions in STM Dmitri Perelman Rui Fan Idit Keidar May 20, 2010 Abstract An effective way to reduce the number of aborts in software transactional memory (STM) is to keep multiple
More informationarxiv: v8 [cs.dc] 29 Jul 2011
On the Cost of Concurrency in Transactional Memory Petr Kuznetsov TU Berlin/Deutsche Telekom Laboratories Srivatsan Ravi TU Berlin/Deutsche Telekom Laboratories arxiv:1103.1302v8 [cs.dc] 29 Jul 2011 Abstract
More informationarxiv: v2 [cs.dc] 13 Nov 2015
Progressive Transactional Memory in Time and Space arxiv:1502.04908v2 [cs.dc] 13 Nov 2015 Petr Kuznetsov 1 Srivatsan Ravi 2 1 Télécom ParisTech 2 TU Berlin October 12, 2018 Abstract Transactional memory
More informationLower bounds for Transactional memory
Lower bounds for Transactional memory Srivatsan Ravi Purdue University Abstract Transactional memory allows the user to declare sequences of instructions as speculative transactions that can either commit
More informationUniversal Constructions that Ensure Disjoint-Access Parallelism and Wait-Freedom
Universal Constructions that Ensure Disjoint-Access Parallelism and Wait-Freedom Faith Ellen University of Toronto faith@cs.toronto.edu Alessia Milani University of Bordeaux milani@labri.fr Panagiota Fatourou
More informationTransaction Processing Concurrency control
Transaction Processing Concurrency control Hans Philippi March 14, 2017 Transaction Processing: Concurrency control 1 / 24 Transactions Transaction Processing: Concurrency control 2 / 24 Transaction concept
More informationUniversal Constructions that Ensure Disjoint-Access Parallelism and Wait-Freedom
Universal Constructions that Ensure Disjoint-Access Parallelism and Wait-Freedom Faith Ellen, Panagiota Fatourou, Eleftherios Kosmas, Alessia Milani, Corentin Travers To cite this version: Faith Ellen,
More informationarxiv: v1 [cs.dc] 22 May 2014
Inherent Limitations of Hybrid Transactional Memory Dan Alistarh 1 Justin Kopinsky 4 Petr Kuznetsov 2 Srivatsan Ravi 3 Nir Shavit 4,5 1 Microsoft Research, Cambridge 2 Télécom ParisTech 3 TU Berlin 4 Massachusetts
More informationConcurrency Control / Serializability Theory
Concurrency Control / Serializability Theory Correctness of a program can be characterized by invariants Invariants over state Linked list: For all items I where I.prev!= NULL: I.prev.next == I For all
More informationNon-Interference and Local Correctness in Transactional Memory
Non-Interference and Local Correctness in Transactional Memory Petr Kuznetsov 1 and Sathya Peri 2 1 Télécom ParisTech petr.kuznetsov@telecom-paristech.fr 2 IIT Patna sathya@iitp.ac.in Abstract. Transactional
More informationConcurrency control (1)
Concurrency control (1) Concurrency control is the set of mechanisms put in place to preserve consistency and isolation If we were to execute only one transaction at a time the (i.e. sequentially) implementation
More information1 Introduction. Michał Kapałka EPFL, Switzerland Rachid Guerraoui EPFL, Switzerland
THE THEORY OF TRANSACTIONAL MEMORY Rachid Guerraoui EPFL, Switzerland rachid.guerraoui@epfl.ch Michał Kapałka EPFL, Switzerland michal.kapalka@epfl.ch Abstract Transactional memory (TM) is a promising
More informationWTTM 2012, the fourth workshop on the theory of transactional memory
WTTM 2012, the fourth workshop on the theory of transactional memory Vincent Gramoli, Alessia Milani To cite this version: Vincent Gramoli, Alessia Milani. WTTM 2012, the fourth workshop on the theory
More informationarxiv: v3 [cs.dc] 17 Feb 2015
Inherent Limitations of Hybrid Transactional Memory Dan Alistarh 1 Justin Kopinsky 4 Petr Kuznetsov 2 Srivatsan Ravi 3 Nir Shavit 4,5 1 Microsoft Research, Cambridge 2 Télécom ParisTech 3 TU Berlin 4 Massachusetts
More informationIndistinguishability: Friend and Foe of Concurrent Data Structures. Hagit Attiya CS, Technion
Indistinguishability: Friend and Foe of Concurrent Data Structures Hagit Attiya CS, Technion Uncertainty is a main obstacle for designing correct applications in concurrent systems Formally captured by
More informationA TimeStamp based Multi-version STM Algorithm
A TimeStamp based Multi-version STM Algorithm Priyanka Kumar 1 and Sathya Peri 1 and K.Vidyasankar 2 1 CSE Dept, Indian Institute of Technology Patna, India, priyanka@iitp.ac.in, sathya@iitp.ac.in 2 CS
More informationThe Space Complexity of Unbounded Timestamps
The Space Complexity of Unbounded Timestamps Faith Ellen 1, Panagiota Fatourou 2, and Eric Ruppert 3 1 University of Toronto, Canada 2 University of Ioannina, Greece 3 York University, Canada Abstract.
More informationPermissiveness in Transactional Memories
Permissiveness in Transactional Memories Rachid Guerraoui, Thomas A. Henzinger, and Vasu Singh EPFL, Switzerland Abstract. We introduce the notion of permissiveness in transactional memories (TM). Intuitively,
More informationTransaction in Distributed Databases
Transaction in Distributed Databases An Application view Example: Planning a conference trip / Budget:=1000; Trials:=1; ConfFee Go Select Conference Select Tutorials Compute Fee [Cost Budget] What ist
More information6 Multiversion Concurrency Control
6 Multiversion Concurrency Control 6.1 Motivation: Versions and serializability 6.2 MVCC using timestamps 6.3 Two Version MV2PL 6.4 MVCC for read only TA 6.5 Read consistency MVCC no read locks 6.6 Snapshot
More informationInherent Limitations of Hybrid Transactional Memory
Inherent Limitations of Hybrid Transactional Memory Dan Alistarh, Justin Kopinsky, Petr Kuznetsov, Srivatsan Ravi, Nir Shavit To cite this version: Dan Alistarh, Justin Kopinsky, Petr Kuznetsov, Srivatsan
More informationA Correctness Criterion for Eager Approach Validation for Transactional Memory System
A Correctness Criterion for Eager Approach Validation for Transactional Memory System Ravi Kumar Department of Computer Science and Engineering Indian Institute of Technology Patna, Patna-800013, Email:
More informationHow Live Can a Transactional Memory Be?
How Live Can a Transactional Memory Be? Rachid Guerraoui Michał Kapałka February 18, 2009 Abstract This paper asks how much liveness a transactional memory (TM) implementation can guarantee. We first devise
More informationMemory Consistency. Minsoo Ryu. Department of Computer Science and Engineering. Hanyang University. Real-Time Computing and Communications Lab.
Memory Consistency Minsoo Ryu Department of Computer Science and Engineering 2 Distributed Shared Memory Two types of memory organization in parallel and distributed systems Shared memory (shared address
More informationEnhancing Concurrency in Distributed Transactional Memory through Commutativity
Enhancing Concurrency in Distributed Transactional Memory through Commutativity Junwhan Kim, Roberto Palmieri, and Binoy Ravindran ECE Department, Virginia Tech, Blacksburg, VA, 24061 {junwhan, robertop,
More informationarxiv: v2 [cs.dc] 24 May 2012
Sharing a Sequential Program: Correctness and Concurrency Analysis Vincent Gramoli 1 Petr Kuznetsov 2 Srivatsan Ravi 2 1 School of Information Technologies, University of Sydney arxiv:1203.4751v2 [cs.dc]
More informationMaking Consistency More Consistent: A Unified Model for Coherence, Consistency and Isolation
Making Consistency More Consistent: A Unified Model for Coherence, Consistency and Isolation ABSTRACT Adriana Szekeres University of Washington aaasz@cs.washington.edu Ordering guarantees are often defined
More informationAnalyzing Snapshot Isolation
Analyzing Snapshot Isolation Andrea Cerone Alexey Gotsman IMDEA Software Institute PODC 2016 presented by Dima Kuznetsov Andrea Cerone, Alexey Gotsman (IMDEA) Analyzing Snapshot Isolation PODC 2016 1 /
More informationCS 5300 module6. Problem #1 (10 Points) a) Consider the three transactions T1, T2, and T3, and the schedules S1 and S2.
Name CS 5300 module6 Student ID Problem #1 (10 Points) a) Consider the three transactions T1, T2, and T3, and the schedules S1 and S2. T1: r1(x); r1(z); w1(x); T2: r2(y); r2(z); w2(y); T3: w3(x); r3(y);
More informationImplementing Isolation
CMPUT 391 Database Management Systems Implementing Isolation Textbook: 20 & 21.1 (first edition: 23 & 24.1) University of Alberta 1 Isolation Serial execution: Since each transaction is consistent and
More information6.852: Distributed Algorithms Fall, Class 20
6.852: Distributed Algorithms Fall, 2009 Class 20 Today s plan z z z Transactional Memory Reading: Herlihy-Shavit, Chapter 18 Guerraoui, Kapalka, Chapters 1-4 Next: z z z Asynchronous networks vs asynchronous
More informationCS 347 Parallel and Distributed Data Processing
CS 347 Parallel and Distributed Data Processing Spring 2016 Notes 5: Concurrency Control Topics Data Database design Queries Decomposition Localization Optimization Transactions Concurrency control Reliability
More informationCONCURRENCY CHAPTER (6/E) CHAPTER (5/E)
CONCURRENCY CHAPTER 21-22.1 (6/E) CHAPTER 17-18.1 (5/E) 2 LECTURE OUTLINE Errors in the absence of concurrency control Need to constrain how transactions interleave Serializability Two-phase locking 3
More informationFork Sequential Consistency is Blocking
Fork Sequential Consistency is Blocking Christian Cachin Idit Keidar Alexander Shraer May 14, 2008 Abstract We consider an untrusted server storing shared data on behalf of clients. We show that no storage
More informationDatabase systems. Database: a collection of shared data objects (d1, d2, dn) that can be accessed by users
Database systems Database: a collection of shared data objects (d1, d2, dn) that can be accessed by users every database has some correctness constraints defined on it (called consistency assertions or
More informationThe Semantics of Progress in Lock-Based Transactional Memory
The Semantics of Progress in Lock-Based Transactional Memory Rachid Guerraoui Michał Kapałka EPFL, Switzerland {rachid.guerraoui, michal.kapalka}@epfl.ch Abstract Transactional memory (TM) is a promising
More information2. Correctness of Transactions: Serialization
2. Correctness of Transactions: Serialization 2.1 Formal Model 2.2 Conflict serializability 2.3 Other types of serializability 2.4 Recoverable transactions and more 2.5 Distributed TAs Es gibt nichts Praktischeres
More informationConcurrency. Consider two ATMs running in parallel. We need a concurrency manager. r1[x] x:=x-250 r2[x] x:=x-250 w[x] commit w[x] commit
DBMS ARCHITECTURE Concurrency Consider two ATMs running in parallel T1 T2 r1[x] x:=x-250 r2[x] x:=x-250 w[x] commit w[x] commit We need a concurrency manager Examples of interference T1: r[x=100] w[x:=600]
More information14.1 Concept: ACID properties. 14 Transactions: models Modeling Transactions. Modeling TAs. The Model. A transaction is. System point of view
14 : models 14.1 Concepts: ACID properties 14.2 Modeling transactions: histories and schedules 14.2.1 Correctness criteria 14.2.2 Serial execution 14.2.3 History 14.3 14.3.1 Conflict graph 14.3.2 theorem
More informationModel Checking Transactional Memories
Model Checking Transactional Memories Abstract Rachid Guerraoui Thomas A. Henzinger Barbara Jobstmann Vasu Singh Model checking software transactional memories (STMs) is difficult because of the unbounded
More informationEnhancing Concurrency in Distributed Transactional Memory through Commutativity
Enhancing Concurrency in Distributed Transactional Memory through Commutativity Junwhan Kim, Roberto Palmieri, Binoy Ravindran Virginia Tech USA Lock-based concurrency control has serious drawbacks Coarse
More informationFork Sequential Consistency is Blocking
Fork Sequential Consistency is Blocking Christian Cachin Idit Keidar Alexander Shraer Novembe4, 008 Abstract We consider an untrusted server storing shared data on behalf of clients. We show that no storage
More informationHKBU: Tutorial 9
COMP7640 @ HKBU: Tutorial 9 Transaction Wei Wang weiw AT cse.unsw.edu.au School of Computer Science & Engineering University of New South Wales November 26, 2014 Wei Wang (UNSW) COMP7640 @ HKBU.tut9 November
More informationOutline. Database Management and Tuning. Isolation Guarantees (SQL Standard) Undesirable Phenomena of Concurrent Transactions. Concurrency Tuning
Outline Database Management and Tuning Johann Gamper Free University of Bozen-Bolzano Faculty of Computer Science IDSE Unit 9 1 2 Conclusion Acknowledgements: The slides are provided by Nikolaus Augsten
More informationAdvanced Databases 2006 Based on slides from Kifer et al., Shasha et al. LOCKING
Advanced Databases 2006 Based on slides from Kifer et al., Shasha et al. LOCKING 1 Agenda Correctness and performance Concurrency control principles Serialization graph 2 Phase locking Lock Implementation
More informationDistributed Systems. Lec 11: Consistency Models. Slide acks: Jinyang Li, Robert Morris
Distributed Systems Lec 11: Consistency Models Slide acks: Jinyang Li, Robert Morris (http://pdos.csail.mit.edu/6.824/notes/l06.txt, http://www.news.cs.nyu.edu/~jinyang/fa09/notes/ds-consistency.pdf) 1
More informationBrewer's Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services
PODC 2004 The PODC Steering Committee is pleased to announce that PODC 2004 will be held in St. John's, Newfoundland. This will be the thirteenth PODC to be held in Canada but the first to be held there
More informationReducing contention in STM
Reducing contention in STM Panagiota Fatourou Department of Computer Science University of Crete & FORTH ICS faturu@csd.uoc.gr Mykhailo Iaremko 1 Institute of Computer Science (ICS) Foundation for Research
More informationTowards Transactional Memory Semantics for C++
Towards Transactional Memory Semantics for C++ Tatiana Shpeisman Intel Corporation Santa Clara, CA tatiana.shpeisman@intel.com Yang Ni Intel Corporation Santa Clara, CA yang.ni@intel.com Ali-Reza Adl-Tabatabai
More informationChapter 15 : Concurrency Control
Chapter 15 : Concurrency Control What is concurrency? Multiple 'pieces of code' accessing the same data at the same time Key issue in multi-processor systems (i.e. most computers today) Key issue for parallel
More informationOutline. Database Tuning. Undesirable Phenomena of Concurrent Transactions. Isolation Guarantees (SQL Standard) Concurrency Tuning.
Outline Database Tuning Nikolaus Augsten University of Salzburg Department of Computer Science Database Group 1 Unit 9 WS 2013/2014 Adapted from Database Tuning by Dennis Shasha and Philippe Bonnet. Nikolaus
More informationByzantine Consensus in Directed Graphs
Byzantine Consensus in Directed Graphs Lewis Tseng 1,3, and Nitin Vaidya 2,3 1 Department of Computer Science, 2 Department of Electrical and Computer Engineering, and 3 Coordinated Science Laboratory
More information) Intel)(TX)memory):) Transac'onal) Synchroniza'on) Extensions)(TSX))) Transac'ons)
) Intel)(TX)memory):) Transac'onal) Synchroniza'on) Extensions)(TSX))) Transac'ons) Transactions - Definition A transaction is a sequence of data operations with the following properties: * A Atomic All
More informationCS 347 Parallel and Distributed Data Processing
CS 347 Parallel and Distributed Data Processing Spring 2016 Notes 5: Concurrency Control Topics Data Database design Queries Decomposition Localization Optimization Transactions Concurrency control Reliability
More informationCOMP Parallel Computing. CC-NUMA (2) Memory Consistency
COMP 633 - Parallel Computing Lecture 11 September 26, 2017 Memory Consistency Reading Patterson & Hennesey, Computer Architecture (2 nd Ed.) secn 8.6 a condensed treatment of consistency models Coherence
More informationDecomposing Opacity. University of California, Los Angeles. Decomposing Opacity Lesani, Palsberg 1 / 15
Decomposing Opacity Mohsen Lesani Jens Palsberg University of California, Los Angeles Decomposing Opacity Lesani, Palsberg 1 / 15 Correctness of Transactional Memory Programming Model Correctness Criteria
More informationScheduling Transactions in Replicated Distributed Software Transactional Memory
Scheduling Transactions in Replicated Distributed Software Transactional Memory Junwhan Kim and Binoy Ravindran ECE Department, Virginia Tech, Blacksburg, VA, 2461 Email: junwhan, binoy@vt.edu Abstract
More informationPerformance Comparison of Various STM Concurrency Control Protocols Using Synchrobench
Performance Comparison of Various STM Concurrency Control Protocols Using Synchrobench Ajay Singh Dr. Sathya Peri Anila Kumari Monika G. February 24, 2017 STM vs Synchrobench IIT Hyderabad February 24,
More informationExercises on Concurrency Control (part 2)
Exercises on Concurrency Control (part 2) Maurizio Lenzerini Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza Anno Accademico 2017/2018 http://www.dis.uniroma1.it/~lenzerin/index.html/?q=node/53
More informationOn the Correctness of Transactional Memory
On the Correctness of Transactional Memory Rachid Guerraoui Michał Kapałka School of Computer and Communication Sciences, EPFL {rachid.guerraoui, michal.kapalka}@epfl.ch Abstract Transactional memory (TM)
More informationCopyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 17-1
Slide 17-1 Chapter 17 Introduction to Transaction Processing Concepts and Theory Chapter Outline 1 Introduction to Transaction Processing 2 Transaction and System Concepts 3 Desirable Properties of Transactions
More informationConsistency examples. COS 418: Distributed Systems Precept 5. Themis Melissaris
Consistency examples COS 418: Distributed Systems Precept 5 Themis Melissaris Plan Midterm poll Consistency examples 2 Fill out this poll: http://tinyurl.com/zdeq4lr 3 Linearizability 4 Once read returns
More informationTime and Space Lower Bounds for Implementations Using k-cas
Time and Space Lower Bounds for Implementations Using k-cas Hagit Attiya Danny Hendler September 12, 2006 Abstract This paper presents lower bounds on the time- and space-complexity of implementations
More information14 Concurrency control
14 Concurrency control 14.1 Serializability and Concurrency Control 14.2 Locking Lock protocols Two phase locking Strict transactional protocols Lock conflicts and Deadlocks Lock modes Deadlock detection,
More informationOutline. Database Tuning. Undesirable Phenomena of Concurrent Transactions. Isolation Guarantees (SQL Standard) Concurrency Tuning.
Outline Database Tuning Nikolaus Augsten University of Salzburg Department of Computer Science Database Group 1 Unit 9 WS 2014/2015 Adapted from Database Tuning by Dennis Shasha and Philippe Bonnet. Nikolaus
More informationA Relativistic Enhancement to Software Transactional Memory
A Relativistic Enhancement to Software Transactional Memory Philip W. Howard Portland State University Jonathan Walpole Portland State University Abstract Relativistic Programming is a technique that allows
More informationIn the Search for Optimal Concurrency
In the Search for Optimal Concurrency Vincent Gramoli 1 Petr Kuznetsov 2 Srivatsan Ravi 3 1 Data61-CSIRO and University of Sydney 2 Télécom ParisTech 3 Purdue University Abstract It is common practice
More informationComputing Parable. The Archery Teacher. Courtesy: S. Keshav, U. Waterloo. Computer Science. Lecture 16, page 1
Computing Parable The Archery Teacher Courtesy: S. Keshav, U. Waterloo Lecture 16, page 1 Consistency and Replication Today: Consistency models Data-centric consistency models Client-centric consistency
More informationLarge-Scale Key-Value Stores Eventual Consistency Marco Serafini
Large-Scale Key-Value Stores Eventual Consistency Marco Serafini COMPSCI 590S Lecture 13 Goals of Key-Value Stores Export simple API put(key, value) get(key) Simpler and faster than a DBMS Less complexity,
More informationChapter 20 Introduction to Transaction Processing Concepts and Theory
Chapter 20 Introduction to Transaction Processing Concepts and Theory - Logical units of DB processing - Large database and hundreds of transactions - Ex. Stock market, super market, banking, etc - High
More informationGenerating Fast Indulgent Algorithms
Generating Fast Indulgent Algorithms Dan Alistarh 1, Seth Gilbert 2, Rachid Guerraoui 1, and Corentin Travers 3 1 EPFL, Switzerland 2 National University of Singapore 3 Université de Bordeaux 1, France
More informationCost of Concurrency in Hybrid Transactional Memory
Cost of Concurrency in Hybrid Transactional Memory Trevor Brown 1 and Srivatsan Ravi 2 1 Technion, Israel Institute of Technology, Haifa, Israel me@tbrown.pro 2 University of Southern California, Los Angeles,
More informationSafe Privatization in Transactional Memory
Abstract Artem Khyzha IMDEA Software Institute Universidad Politécnica de Madrid Alexey Gotsman IMDEA Software Institute Transactional memory (TM) facilitates the development of concurrent applications
More informationarxiv: v1 [cs.dc] 4 Mar 2016
In the Search of Optimal Concurrency Vincent Gramoli 3 Petr Kuznetsov 1 Srivatsan Ravi 2 1 Télécom ParisTech 2 Purdue University 3 University of Sydney arxiv:1603.01384v1 [cs.dc] 4 Mar 2016 Abstract Implementing
More informationProving Isolation Properties for Software Transactional Memory
Proving Isolation Properties for Software Transactional Memory Annette Bieniusa and Peter Thiemann University of Freiburg, Germany Abstract. An algorithm for Software Transactional Memory (STM) is correct
More informationCost of Concurrency in Hybrid Transactional Memory
Cost of Concurrency in Hybrid Transactional Memory Trevor Brown University of Toronto tabrown@cs.toronto.ca Srivatsan Ravi Purdue University srivatsanravi@purdue.edu Abstract State-of-the-art software
More informationhow to implement any concurrent data structure
how to implement any concurrent data structure marcos k. aguilera vmware jointly with irina calciu siddhartha sen mahesh balakrishnan Where to find more information about this work How to Implement Any
More information12.3 Nonlocking schedulers. Timestamp ordering. TO concurrency control guarantees conflict-serializable schedules
12.3 Nonlocking schedulers 12.3.1 not discussed in class 12.3.1 Time stamp ordering Basic idea: assign timestamp when transaction starts if ts(t1) < ts(t2) < ts(tn), then scheduler has to produce history
More informationBe General and Don t Give Up Consistency in Geo- Replicated Transactional Systems
Be General and Don t Give Up Consistency in Geo- Replicated Transactional Systems Alexandru Turcu, Sebastiano Peluso, Roberto Palmieri and Binoy Ravindran Replicated Transactional Systems DATA CONSISTENCY
More informationThe Issue. Implementing Isolation. Transaction Schedule. Isolation. Schedule. Schedule
The Issue Implementing Isolation Chapter 20 Maintaining database correctness when many transactions are accessing the database concurrently Assuming each transaction maintains database correctness when
More informationOn Avoiding Spare Aborts in Transactional Memory
On Avoiding Spare Aborts in Transactional Memory Idit Keidar Dmitri Perelman Dept. of Electrical Engineering Technion, Haifa 32000, Israel idish@ee.technion.ac.il, dima39@tx.technion.ac.il Abstract This
More informationDatenbanksysteme II: Implementation of Database Systems Synchronization of Concurrent Transactions
Datenbanksysteme II: Implementation of Database Systems Synchronization of Concurrent Transactions Material von Prof. Johann Christoph Freytag Prof. Kai-Uwe Sattler Prof. Alfons Kemper, Dr. Eickler Prof.
More informationCS 370 Concurrency worksheet. T1:R(X); T2:W(Y); T3:R(X); T2:R(X); T2:R(Z); T2:Commit; T3:W(X); T3:Commit; T1:W(Y); Commit
CS 370 Concurrency worksheet Name Student ID 1) Apply the appropriate locks and show the resulting schedule for the following sequence of operations using strict 2PL. Assume locks can be upgraded. :R(X);
More informationTransaction. Primary unit of work Well formed: Sequence of operations between begin and end (commit or abort)
Transaction Primary unit of work Well formed: Sequence of operations between begin and end (commit or abort) Concurrency needed in order to start multiple parallel transactions. 1 Serial and serializable
More informationCSE 444: Database Internals. Lectures Transactions
CSE 444: Database Internals Lectures 13-14 Transactions CSE 444 - Spring 2014 1 Announcements Lab 2 is due TODAY Lab 3 will be released today, part 1 due next Monday HW4 is due on Wednesday HW3 will be
More informationFor more Articles Go To: Whatisdbms.com CONCURRENCY CONTROL PROTOCOL
For more Articles Go To: Whatisdbms.com CONCURRENCY CONTROL PROTOCOL In the multi-user system, we all know that multiple transactions run in parallel, thus trying to access the same data and suppose if
More informationElastic Transactions
Elastic Transactions Pascal Felber a, Vincent Gramoli b,1, Rarchid Guerraoui c a University of Neuchâtel, Rue Emile-Argand 11, B-114, CH-2 Neuchâtel, Switzerland. b School of Information Technologies,
More informationTransactional Interference-less Balanced Tree
Transactional Interference-less Balanced Tree Ahmed Hassan, Roberto Palmieri, Binoy Ravindran To cite this version: Ahmed Hassan, Roberto Palmieri, Binoy Ravindran. Transactional Interference-less Balanced
More informationHigh-Level Small-Step Operational Semantics for Software Transactions
High-Level Small-Step Operational Semantics for Software Transactions Katherine F. Moore Dan Grossman The University of Washington Motivating Our Approach Operational Semantics Model key programming-language
More informationDistributed Systems. Lec 12: Consistency Models Sequential, Causal, and Eventual Consistency. Slide acks: Jinyang Li
Distributed Systems Lec 12: Consistency Models Sequential, Causal, and Eventual Consistency Slide acks: Jinyang Li (http://www.news.cs.nyu.edu/~jinyang/fa10/notes/ds-eventual.ppt) 1 Consistency (Reminder)
More informationTransactional Memory. R. Guerraoui, EPFL
Transactional Memory R. Guerraoui, EPFL Locking is history Lock-freedom is difficult Wanted A concurrency control abstraction that is simple, robust and efficient Transactions Historical perspective Eswaran
More informationAtomic Transac1ons. Atomic Transactions. Q1: What if network fails before deposit? Q2: What if sequence is interrupted by another sequence?
CPSC-4/6: Operang Systems Atomic Transactions The Transaction Model / Primitives Serializability Implementation Serialization Graphs 2-Phase Locking Optimistic Concurrency Control Transactional Memory
More informationOn the Expressiveness of Polyadicity in Higher-Order Process Calculi
On the Expressiveness of Polyadicity in Higher-Order Process Calculi Ivan Lanese, Jorge A. Pérez, Davide Sangiorgi (Univ. di Bologna) Alan Schmitt (INRIA Grenoble - Rhône Alpes) ICTCS 09 Cremona, September
More informationReport to Brewer s original presentation of his CAP Theorem at the Symposium on Principles of Distributed Computing (PODC) 2000
Brewer s CAP Theorem Report to Brewer s original presentation of his CAP Theorem at the Symposium on Principles of Distributed Computing (PODC) 2000 Written by Table of Contents Introduction... 2 The CAP-Theorem...
More informationReplications and Consensus
CPSC 426/526 Replications and Consensus Ennan Zhai Computer Science Department Yale University Recall: Lec-8 and 9 In the lec-8 and 9, we learned: - Cloud storage and data processing - File system: Google
More informationSection 4 Concurrent Objects Correctness, Progress and Efficiency
Section 4 Concurrent Objects Correctness, Progress and Efficiency CS586 - Panagiota Fatourou 1 Concurrent Objects A concurrent object is a data object shared by concurrently executing processes. Each object
More informationA Quorum-Based Replication Framework for Distributed Software Transactional Memory
A Quorum-Based Replication Framework for Distributed Software Transactional Memory Bo Zhang ECE Department, Virginia Tech Blacksburg, VA 24061, USA alexzbzb@vt.edu Binoy Ravindran ECE Department, Virginia
More informationCost of Concurrency in Hybrid Transactional Memory. Trevor Brown (University of Toronto) Srivatsan Ravi (Purdue University)
Cost of Concurrency in Hybrid Transactional Memory Trevor Brown (University of Toronto) Srivatsan Ravi (Purdue University) 1 Transactional Memory: a history Hardware TM Software TM Hybrid TM 1993 1995-today
More informationTime-Warp: Lightweight Abort Minimization in Transactional Memory
Time-Warp: Lightweight Abort Minimization in Transactional Memory Nuno Diegues Paolo Romano INESC-ID / Instituto Superior Técnico, University of Lisbon, Portugal ndiegues@gsd.inesc-id.pt romano@inesc-id.pt
More information