Lune

EuroSys2020Top-tier venue

Persistent memory and the rise of universal constructions

Andreia Correia, Pascal Felber, Pedro Ramalhete

2020Year
22Citations
6Top-tier citations

Abstract

Non-Volatile Main Memory (NVMM) has brought forth the need for data structures that are not only concurrent but also resilient to non-corrupting failures. Until now, persistent transactional memory libraries (PTMs) have focused on providing correct recovery from non-corrupting failures without memory leaks. Most PTMs that provide concurrent access do so with blocking progress.

The main focus of this paper is to design practical PTMs with wait-free progress based on universal constructions. We first present CX-PUC, the first bounded wait-free persistent universal construction requiring no annotation of the underlying sequential data structure. CX-PUC is an adaptation to persistence of CX, a recently proposed universal construction. We next introduce CX-PTM, a PTM that achieves better throughput and supports transactions over multiple data structure instances, at the price of requiring annotation of the loads and stores in the data structure-as is commonplace in software transactional memory. Finally, we propose a new generic construction based on a finite number of replicas and Herlihy's wait-free consensus, which uses physical instead of logical logging. This PTM, which we named Redo-PTM, records all the store instructions executed on each operation and considerably improves throughput for update transactions. These generic constructions enable the creation of wait-free, failure resilient and durable linearizable data structures for NVMM, with integrated wait-free memory allocation and deallocation. By exploiting its capability of providing wait-free ACID transactions, we have used Redo-PTM to implement the world's first persistent key-value store with bounded wait-free progress.

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.

Questions to start from

Your agent calls

Luneget_paper_fulltext

Ask in Lune

Free to start. No credit card required.

Cited by top-tier papers6

Ask how each one uses it

Builds on1

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines