scispace - formally typeset
Proceedings ArticleDOI

Hardware Support for Relaxed Concurrency Control in Transactional Memory

Reads0
Chats0
TLDR
This paper uses a technique which approximates conflict-serializability and implements it in hardware on top a base hardware transactional memory system that provides support for isolation and conflict detection and shows that it captures the benefits of conflict- serializability.
Abstract
Today's transactional memory systems implement the two-phase-locking (2PL) algorithm which aborts transactions every time a conflict happens. 2PL is a simple algorithm that provides fast transactional operations. However, it limits concurrency in applications with high contention by increasing the rate of aborts. More relaxed algorithms that can commit conflicting transactions have recently been shown to provide better concurrency both in software and hardware. However, existing approaches for implementing such algorithms increase latencies of transactional operations, require complex hardware support and alter standard cache coherence protocols. In this paper, we discuss how a relaxed concurrency control algorithm can be efficiently implemented in hardware. More specifically, we use a technique which approximates conflict-serializability and implement it in hardware on top a base hardware transactional memory system that provides support for isolation and conflict detection. Our novel hardware scheme is based on recording conflicts as they occur, instead of aborting transactions. Transactions serialize at commit time according to these conflicts by sending broadcast messages. Our evaluation of this hardware scheme using a simulator and standard benchmarks shows that it captures the benefits of conflict-serializability. Applications with long transactions and high contention benefit the most, abort rates are reduced up to 7.2 times and the performance is improved up to 66%. We argue that this improvement comes with little additional hardware complexity and requires no changes to the transactional programming model.

read more

Citations
More filters
Journal Article

A Lazy Snapshot Algorithm with Eager Validation

TL;DR: This paper formally introduces a lazy snapshot algorithm that verifies at each object access that the view observed by a transaction is consistent and demonstrates that the performance is quite competitive by comparing other STMs with an STM that uses the algorithm.
Proceedings ArticleDOI

SI-TM: reducing transactional memory abort rates through snapshot isolation

TL;DR: In this article, snapshot isolation transactional memory (SHM) is proposed to reduce the number of aborted transactions by up to 20x in some cases by exploiting snapshots, an established database model of transactions and only need to abort on write-write conflicts.
Journal ArticleDOI

Effective Transactional Memory Execution Management for Improved Concurrency

TL;DR: This model has been implemented in a lightweight software transactional memory system, TinySTM, and has been evaluated on a set of benchmarks obtaining an important performance improvement over the baseline TM system.
Journal ArticleDOI

OmniOrder: directory-based conflict serialization of transactions

TL;DR: OmniOrder is presented, the first design that efficiently executes conflicting atomic blocks concurrently in a directory-based coherence environment and its communication overhead of transferring the history of speculative updates is negligible.
Journal ArticleDOI

Efficient Correction of Anomalies in Snapshot Isolation Transactions

TL;DR: This work presents a technique based on dynamic code and graph dependency analysis that automatically corrects existing snapshot isolation anomalies in transactional memory programs and shows that corrected applications retain the performance benefits characteristic of snapshot isolation over conventional transactionalMemory systems.
References
More filters
Proceedings ArticleDOI

Transactional memory: architectural support for lock-free data structures

TL;DR: Simulation results show that transactional memory matches or outperforms the best known locking techniques for simple benchmarks, even in the absence of priority inversion, convoying, and deadlock.
Journal ArticleDOI

Simics: A full system simulation platform

TL;DR: Simics is a platform for full system simulation that can run actual firmware and completely unmodified kernel and driver code, and it provides both functional accuracy for running commercial workloads and sufficient timing accuracy to interface to detailed hardware models.
Journal ArticleDOI

Multifacet's general execution-driven multiprocessor simulator (GEMS) toolset

TL;DR: The Wisconsin Multifacet Project has created a simulation toolset to characterize and evaluate the performance of multiprocessor hardware systems commonly used as database and web servers as mentioned in this paper, which includes a set of timing simulator modules for modeling the timing of the memory system and microprocessors.

Multifacets General Execution-Driven Multiprocessor Simulator (GEMS) Toolset

M. M. Martin
TL;DR: The Wisconsin Multifacet Project has created a simulation toolset to characterize and evaluate the performance of multiprocessor hardware systems commonly used as database and web servers and has released a set of timing simulator modules for modeling the timing of the memory system and microprocessors.
Book

Database Systems: A Practical Approach to Design, Implementation and Management

TL;DR: This best-selling text introduces the theory behind databases in a concise yet comprehensive manner, providing database design methodology that can be used by both technical and non-technical readers.
Related Papers (5)