TL;DR
This paper introduces Recipe, a systematic method to convert existing concurrent DRAM indexes into crash-consistent persistent memory indexes, achieving significant performance improvements with minimal code changes.
Contribution
The paper provides a set of conditions and actions for converting various DRAM indexes into crash-consistent persistent memory indexes with minimal effort.
Findings
Converted indexes outperform state-of-the-art PM indexes by up to 5.2x.
Minimal code changes (30-200 lines) are sufficient for conversion.
P-CLHT outperforms CCEH by up to 2.4x in YCSB workloads.
Abstract
We present Recipe, a principled approach for converting concurrent DRAM indexes into crash-consistent indexes for persistent memory (PM). The main insight behind Recipe is that isolation provided by a certain class of concurrent in-memory indexes can be translated with small changes to crash-consistency when the same index is used in PM. We present a set of conditions that enable the identification of this class of DRAM indexes, and the actions to be taken to convert each index to be persistent. Based on these conditions and conversion actions, we modify five different DRAM indexes based on B+ trees, tries, radix trees, and hash tables to their crash-consistent PM counterparts. The effort involved in this conversion is minimal, requiring 30-200 lines of code. We evaluated the converted PM indexes on Intel DC Persistent Memory, and found that they outperform state-of-the-art,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
