Scaling HTM-Supported Database Transactions to Many Cores

Leis V, Kemper A, Neumann T (2016)


Publication Type: Journal article

Publication year: 2016

Journal

Book Volume: 28

Pages Range: 297-310

Article Number: 7056431

Journal Issue: 2

DOI: 10.1109/TKDE.2015.2411272

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.

Authors with CRIS profile

Involved external institutions

How to cite

APA:

Leis, V., Kemper, A., & Neumann, T. (2016). Scaling HTM-Supported Database Transactions to Many Cores. IEEE Transactions on Knowledge and Data Engineering, 28(2), 297-310. https://doi.org/10.1109/TKDE.2015.2411272

MLA:

Leis, Viktor, Alfons Kemper, and Thomas Neumann. "Scaling HTM-Supported Database Transactions to Many Cores." IEEE Transactions on Knowledge and Data Engineering 28.2 (2016): 297-310.

BibTeX: Download