Ali Saoud Object Based Transactional Memory. Introduction Resent trends go towards object based SMT because it’s dynamic Word-based STM systems are more.

Slides:



Advertisements
Similar presentations
Optimistic Methods for Concurrency Control By : H.T. Kung & John T. Robinson Presenters: Munawer Saeed.
Advertisements

1 Lecture 18: Transactional Memories II Papers: LogTM: Log-Based Transactional Memory, HPCA’06, Wisconsin LogTM-SE: Decoupling Hardware Transactional Memory.
Concurrency Control Enforcing Serializability by Locks
Lock-Based Concurrency Control
Virendra J. Marathe, William N. Scherer III, and Michael L. Scott Department of Computer Science University of Rochester Presented by: Armand R. Burks.
Software Transactional Memory Kevin Boos. Two Papers Software Transactional Memory for Dynamic-Sized Data Structures (DSTM) – Maurice Herlihy et al –
Toward High Performance Nonblocking Software Transactional Memory Virendra J. Marathe University of Rochester Mark Moir Sun Microsystems Labs.
Lecture 11 Recoverability. 2 Serializability identifies schedules that maintain database consistency, assuming no transaction fails. Could also examine.
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture X: Transactions.
Database Systems, 8 th Edition Concurrency Control with Time Stamping Methods Assigns global unique time stamp to each transaction Produces explicit.
CMPT Dr. Alexandra Fedorova Lecture X: Transactions.
TOWARDS A SOFTWARE TRANSACTIONAL MEMORY FOR GRAPHICS PROCESSORS Daniel Cederman, Philippas Tsigas and Muhammad Tayyab Chaudhry.
CS 582 / CMPE 481 Distributed Systems Concurrency Control.
EPFL - March 7th, 2008 Interfacing Software Transactional Memory Simplicity vs. Flexibility Vincent Gramoli.
Transaction Management and Concurrency Control
Transaction Management and Concurrency Control
Supporting Nested Transactional Memory in LogTM Authors Michelle J Moravan Mark Hill Jayaram Bobba Ben Liblit Kevin Moore Michael Swift Luke Yen David.
Selfishness in Transactional Memory Raphael Eidenbenz, Roger Wattenhofer Distributed Computing Group Game Theory meets Multicore Architecture.
Chapter 13 An Overview of Transaction Processing.
Transaction Management
The Cost of Privatization Hagit Attiya Eshcar Hillel Technion & EPFLTechnion.
Chapter 9 Transaction Management and Concurrency Control
Software Transaction Memory for Dynamic-Sized Data Structures presented by: Mark Schall.
9 Chapter 9 Transaction Management and Concurrency Control Hachim Haddouti.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 10 Transaction Management and Concurrency Control.
Transactions and concurrency control
An Introduction to Software Transactional Memory
Software Transactional Memory for Dynamic-Sized Data Structures Maurice Herlihy, Victor Luchangco, Mark Moir, William Scherer Presented by: Gokul Soundararajan.
Reduced Hardware NOrec: A Safe and Scalable Hybrid Transactional Memory Alexander Matveev Nir Shavit MIT.
Security and Transaction Nhi Tran CS 157B - Dr. Lee Fall, 2003.
BIS Database Systems School of Management, Business Information Systems, Assumption University A.Thanop Somprasong Chapter # 10 Transaction Management.
A Qualitative Survey of Modern Software Transactional Memory Systems Virendra J. Marathe Michael L. Scott.
Distributed Transactions
Databases Illuminated
CS5204 – Operating Systems Transactional Memory Part 2: Software-Based Approaches.
ITEC 3220M Using and Designing Database Systems Instructor: Prof. Z. Yang Course Website: 3220m.htm
Concurrency Server accesses data on behalf of client – series of operations is a transaction – transactions are atomic Several clients may invoke transactions.
Lowering the Overhead of Software Transactional Memory Virendra J. Marathe, Michael F. Spear, Christopher Heriot, Athul Acharya, David Eisenstat, William.
11/7/2012ISC329 Isabelle Bichindaritz1 Transaction Management & Concurrency Control.
Low-Overhead Software Transactional Memory with Progress Guarantees and Strong Semantics Minjia Zhang, 1 Jipeng Huang, Man Cao, Michael D. Bond.
Hybrid Transactional Memory Sanjeev Kumar, Michael Chu, Christopher Hughes, Partha Kundu, Anthony Nguyen, Intel Labs University of Michigan Intel Labs.
Transactional Memory Lecturer: Danny Hendler. 2 2 From the New York Times…
II.I Selected Database Issues: 2 - Transaction ManagementSlide 1/20 1 II. Selected Database Issues Part 2: Transaction Management Lecture 4 Lecturer: Chris.
Optimistic Methods for Concurrency Control By: H.T. Kung and John Robinson Presented by: Frederick Ramirez.
Transactions and Concurrency Control. Concurrent Accesses to an Object Multiple threads Atomic operations Thread communication Fairness.
Software Transactional Memory Should Not Be Obstruction-Free Robert Ennals Presented by Abdulai Sei.
© 2008 Multifacet ProjectUniversity of Wisconsin-Madison Pathological Interaction of Locks with Transactional Memory Haris Volos, Neelam Goyal, Michael.
Transaction Management Transparencies. ©Pearson Education 2009 Chapter 14 - Objectives Function and importance of transactions. Properties of transactions.
An Architecture for Mobile Databases By Vishal Desai.
Hardware and Software transactional memory and usages in MRE
1 Advanced Database Concepts Transaction Management and Concurrency Control.
Transaction Management and Concurrent Control
9 1 Chapter 9_B Concurrency Control Database Systems: Design, Implementation, and Management, Rob and Coronel.
Multidatabase Transaction Management COP5711. Multidatabase Transaction Management Outline Review - Transaction Processing Multidatabase Transaction Management.
Chapter 13 Managing Transactions and Concurrency Database Principles: Fundamentals of Design, Implementation, and Management Tenth Edition.
Maurice Herlihy, Victor Luchangco, Mark Moir, William N. Scherer III
Maurice Herlihy and J. Eliot B. Moss,  ISCA '93
Transaction Management and Concurrency Control
Minh, Trautmann, Chung, McDonald, Bronson, Casper, Kozyrakis, Olukotun
Part 2: Software-Based Approaches
Transaction Management and Concurrency Control
Why The Grass May Not Be Greener On The Other Side: A Comparison of Locking vs. Transactional Memory By McKenney, Michael, Triplett and Walpole.
Maurice Herlihy, Victor Luchangco, Mark Moir, William N. Scherer III
A Qualitative Survey of Modern Software Transactional Memory Systems
Changing thread semantics
Chapter 10 Transaction Management and Concurrency Control
Hybrid Transactional Memory
Introduction of Week 13 Return assignment 11-1 and 3-1-5
Transaction management
Transactions, Properties of Transactions
Presentation transcript:

Ali Saoud Object Based Transactional Memory

Introduction Resent trends go towards object based SMT because it’s dynamic Word-based STM systems are more suitable for data structures that may require concurrent access at a high level of granularity (e.g. multi-dimensional arrays).

Dynamic Software Transactional Memory (DSTM) Handler The locator is the main key to the design of the DSTM. Every pointer goes through a level of indirection.

Dynamic Software Transactional Memory (DSTM) Handler Active committed Aborted If the transaction is ACTIVE or ABORTED, the most recent valid version of the data object is the old version referenced by the locator. If the transaction is COMMITTED, the most recent valid version of the data object is the new version referenced by the locator.

Dynamic Software Transactional Memory (DSTM) Handler Active Committed Aborted Data to be Modified Current Data

Open For Writing Handler T1(open)

Open For Writing Handler T1(open) Transaction New object Old object T0: committed Object Data

Open For Writing Handler T1(open) Transaction New object Old object T0: committed Object Data Transaction New object Old object Object Data T1 active Copy A successful CAS guarantees that the current transaction is visible to the entire concurrent system. A failure in CAS implies that some other transaction has opened (acquired) the TM Object in between. CAS

Open For Writing Handler T1(open) Transaction New object Old object T0: Aborted Object Data

Open For Writing Handler T1(open) Transaction New object Old object T0: aborted Object Data Transaction New object Old object Object Data T1 active Copy

Open For Writing Handler T1(open) Active Transaction New object Old object T0: Active Object Data A transaction goes through a novel contention management protocol to decide whether to abort itself or the TM Object's current ACTIVE owner transaction. aggressive –always/immediately aborts conflicting transaction polite –adaptive back-off contention reduced by “early release”: reference to object dropped before transaction commits and subsequent changes to the released object does not jeopardize consistency

Open For Reading Handler T1 Active Transaction New object Old object T0: Committed Object Data Read only list Object Value Next

Open For Reading Handler T1 Active Transaction New object Old object T0: Committed Object Data Read only list Object Value Next

FSTM Conflicts among transactions are detected and resolved at commit-time

FSTM Aborted Committed Read_checking

Commit Acquire Acquire each object in the read-write list in global total order using atomic CAS for each object Abort if conflict with committed transaction detected Help if conflict with uncommitted transaction detected

Commit 2 Read-checking Verify consistency of each object in the read-only list Abort if change is detected in object held by Undecided transaction If conflict detected with Read-checking transaction: Help if other transaction precedes current transaction Abort if current transaction precedes other transaction Release acquired transactions

Comparison