Pronto: Easy and Fast Persistence for Volatile Data Structures
Amir Saman Memaripour, Joseph Izraelevitz, Steven Swanson
Abstract
Non-Volatile Main Memories (NVMMs) promise an opportunity for fast, persistent data structures. However, building these data structures is hard because their data must be consistent in the wake of a failure. Existing methods for building persistent data structures require either in-depth code changes to an existing data structure using an NVMM-aware library or rewriting the data structure from scratch. Unfortunately, both of these methods are labor-intensive and error-prone.
Pronto is a new NVMM library that reduces the programming effort required to add persistence to volatile data structures using asynchronous semantic logging (ASL). ASL is generic enough to allow programmers to add persistence to the existing volatile data structure (e.g., C++ Standard Template Library containers) with very little programming effort. Furthermore, ASL moves most durability code off the critical path, and our evaluation shows Pronto data structures outperform highly-optimized NVMM data structures written with other libraries by a large margin.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 5a1ae5de-5855-4e52-8f93-dff184fd9fd3Cited by top-tier papers21
- Understanding the Idiosyncrasies of Real Persistent MemoryShashank Gugnani, Arjun Kashyap, Xiaoyi LuVLDB 2021 · 67 citations
- Persistent Memory Hash Indexes: An Experimental EvaluationDaokun Hu, Zhiwen Chen, Jianbing Wu, Jianhua Sun et al.VLDB 2021 · 47 citations
- Nap: A Black-Box Approach to NUMA-Aware Persistent Memory IndexesQing Wang, Youyou Lu, Junru Li, Jiwu ShuOSDI 2021 · 46 citations
- BBB: Simplifying Persistent Programming using Battery-Backed BuffersMohammad A. Alshboul, Prakash Ramrakhyani, William Wang, James Tuck et al.HPCA 2021 · 34 citations
- Mirror: making lock-free data structures persistentMichal Friedman, Erez Petrank, Pedro RamalhetePLDI 2021 · 34 citations
Related papers
- Corundum: statically-enforced persistent memory safetyMorteza Hoseinzadeh, Steven SwansonASPLOS 2021 · 18 citations
- Persistent memory and the rise of universal constructionsAndreia Correia, Pascal Felber, Pedro RamalheteEuroSys 2020 · 22 citations
- FliT: a library for simple and efficient persistent algorithmsYuanhao Wei, Naama Ben-David, Michal Friedman, Guy E. Blelloch et al.PPoPP 2022 · 19 citations
- MOD: Minimally Ordered Durable Datastructures for Persistent MemorySwapnil Haria, Mark D. Hill, Michael M. SwiftASPLOS 2020 · 47 citations
- ResPCT: fast checkpointing in non-volatile memory for multi-threaded applicationsAna Khorguani, Thomas Ropars, Noel De PalmaEuroSys 2022 · 15 citations
