Cost of Concurrency in Hybrid Transactional Memory

@inproceedings{Brown2017CostOC,
  title={Cost of Concurrency in Hybrid Transactional Memory},
  author={Trevor Brown and Srivatsan Ravi},
  booktitle={DISC},
  year={2017}
}
State-of-the-art \emph{software transactional memory (STM)} implementations achieve good performance by carefully avoiding the overhead of \emph{incremental validation} (i.e., re-reading previously read data items to avoid inconsistency) while still providing \emph{progressiveness} (allowing transactional aborts only due to \emph{data conflicts}). Hardware transactional memory (HTM) implementations promise even better performance, but offer no progress guarantees. Thus, they must be combined… 

Figures from this paper

Inherent limitations of hybrid transactional memory
TLDR
A general model for HyTM implementations, which captures the ability of hardware transactions to buffer memory accesses and captures for the first time the trade-off between the degree of hardware-software TM concurrency and the amount of instrumentation overhead.
Enhancing Efficiency of Hybrid Transactional Memory Via Dynamic Data Partitioning Schemes
TLDR
DMP-TM (Dynamic Memory Partitioning-TM), a novel HyTM algorithm that exploits the idea of leveraging operating system-level memory protection mechanisms to detect conflicts between HTM and STM transactions, to achieve robust performance even in unfavourable workload that exhibits high contention between the STM and HTM path.
Techniques for Enhancing the Efficiency of Transactional Memory Systems
Transactional Memory (TM) is an emerging programming paradigm that drastically simplifies the development of concurrent applications by relieving programmers from a major source of complexity: how ...

References

SHOWING 1-10 OF 36 REFERENCES
Inherent limitations of hybrid transactional memory
TLDR
A general model for HyTM implementations, which captures the ability of hardware transactions to buffer memory accesses and captures for the first time the trade-off between the degree of hardware-software TM concurrency and the amount of instrumentation overhead.
Optimizing hybrid transactional memory: the importance of nonspeculative operations
TLDR
Several new hybrid TM algorithms are presented that can execute HTM and STM transactions concurrently and can thus provide good performance over a large spectrum of workloads and are evaluated based on AMD's Advanced Synchronization Facility.
Hybrid transactional memory
TLDR
Using a simulated multiprocessor with HTM support, the viability of the HyTM approach is demonstrated: it can provide performance and scalability approaching that of an unbounded HTM implementation, without the need to support all transactions with complicatedHTM support.
Transactional Locking II
TLDR
This paper introduces the transactional locking II (TL2) algorithm, a software transactional memory (STM) algorithm based on a combination of commit-time locking and a novel global version-clock based validation technique, which is ten-fold faster than a single lock.
Inherent Limitations on Disjoint-Access Parallel Implementations of Transactional Memory
TLDR
A lower bound of Ω(t) is proved on the number of writes needed in order to implement a read-only transaction of t items, which successfully terminates in a disjoint-access parallel TM implementation, which assumes strict serializability and thus hold under the assumption of opacity.
Progressive Transactional Memory in Time and Space
TLDR
It is shown that the total number of remote memory references RMRs that take place in an execution of a progressive TM in which n concurrent processes perform transactions on a single data item might reach $$\varOmega n \log n$$, which appears to be the first RMR complexity lower bound for transactional memory.
Software transactional memory
TLDR
STM is used to provide a general highly concurrent method for translating sequential object implementations to non-blocking ones based on implementing a k-word compare&swap STM-transaction, and outperforms Herlihy’s translation method for sufficiently large numbers of processors.
Adaptive Software Transactional Memory
TLDR
This paper considers four dimensions of the STM design space and presents a new Adaptive STM (ASTM) system that adjusts to the offered workload, allowing it to match the performance of the best known existing system on every tested workload.
Reduced hardware transactions: a new approach to hybrid transactional memory
TLDR
Reduced hardware (RH) transactions overcomes the problem of unacceptably high instrumentation overhead in hardware transactions by using a new approach which is called reduced software slow-path, which is obstruction-free, allows execution of long transactions and protected instructions that may typically cause hardware transactions to fail, and allows complete concurrency between hardware and software transactions.
Principles of Transactional Memory
TLDR
The aim of this book is to provide theoretical foundations for transactional memory, as well as answering precisely when a TM implementation is correct, what kind of properties it can ensure, what are the power and limitations of a TM, and what inherent trade-offs are involved in designing a TM algorithm.
...
...