Crafty: Efficient, HTM-Compatible Persistent Transactions
Abstract
Byte-addressable persistent memory, such as Intel/Micron 3D XPoint, is an emerging technology that bridges the gap between volatile memory and persistent storage. Data in persistent memory survives crashes and restarts; however, it is challenging to ensure that this data is consistent after failures. Existing approaches incur significant performance costs to ensure crash consistency. This paper introduces Crafty, a new approach for ensuring consistency and atomicity on persistent memory operations using commodity hardware with existing hardware transactional memory (HTM) capabilities, while incurring low overhead. Crafty employs a novel technique called nondestructive undo logging that leverages commodity HTM to control persist ordering. Our evaluation shows that Crafty outperforms state-of-the-art prior work under low contention, and performs competitively under high contention.
- Publication:
-
arXiv e-prints
- Pub Date:
- April 2020
- DOI:
- 10.48550/arXiv.2004.00262
- arXiv:
- arXiv:2004.00262
- Bibcode:
- 2020arXiv200400262G
- Keywords:
-
- Computer Science - Programming Languages;
- D.3.3;
- H.3.2
- E-Print:
- 32 pages, 24 figures. To appear in PLDI 2020