Scaling HTM-Supported Database Transactions to Many Cores

Research output: Contribution to journalArticlepeer-review

13 Scopus citations

Abstract

So far, transactional memory - although a promising technique - suffered from the absence of an efficient hardware implementation. Intel's Haswell microarchitecture introduced hardware transactional memory (HTM) in mainstream CPUs. HTM allows for efficient concurrent, atomic operations, which is also highly desirable in the context of databases. On the other hand, HTM has several limitations that, in general, prevent a one-to-one mapping of database transactions to HTM transactions. In this work, we devise several building blocks that can be used to exploit HTM in main-memory databases. We show that HTM allows for achieving nearly lock-free processing of database transactions by carefully controlling the data layout and the access patterns. The HTM component is used for detecting the (infrequent) conflicts, which allows for an optimistic, and thus very low-overhead execution of concurrent transactions. We evaluate our approach on a four-core desktop and a 28-core server system and find that HTM indeed provides a scalable, powerful, and easy to use synchronization primitive.

Original languageEnglish
Article number7056431
Pages (from-to)297-310
Number of pages14
JournalIEEE Transactions on Knowledge and Data Engineering
Volume28
Issue number2
DOIs
StatePublished - 1 Feb 2016

Keywords

  • concurrency control
  • hardware transactional memory
  • synchronization
  • transaction processing

Fingerprint

Dive into the research topics of 'Scaling HTM-Supported Database Transactions to Many Cores'. Together they form a unique fingerprint.

Cite this