Proceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecture 2019
DOI: 10.1145/3352460.3358321
|View full text |Cite
|
Sign up to set email alerts
|

Distributed Logless Atomic Durability with Persistent Memory

Abstract: Datacenter operators have started deploying Persistent Memory (PM), leveraging its combination of fast access and persistence for significant performance gains. A key challenge for PM-aware software is to maintain high performance while achieving atomic durability. The latter typically requires the use of logging, which introduces considerable overhead with additional CPU cycles, write traffic, and ordering requirements. In this paper, we exploit the data multiversioning inherent in the memory hierarchy to ach… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
16
0

Year Published

2021
2021
2023
2023

Publication Types

Select...
7
1

Relationship

1
7

Authors

Journals

citations
Cited by 26 publications
(16 citation statements)
references
References 34 publications
0
16
0
Order By: Relevance
“…The inclusion of the ThreadID in the RID removes the need to synchronize across threads when assigning atomic region IDs [23].…”
Section: Representing the Atomic Region Idmentioning
confidence: 99%
See 2 more Smart Citations
“…The inclusion of the ThreadID in the RID removes the need to synchronize across threads when assigning atomic region IDs [23].…”
Section: Representing the Atomic Region Idmentioning
confidence: 99%
“…On-Chip Data Versioning: Several works use on-chip resources to contain partial updates on-chip until an atomic region completes [1,6,7,23,31,43,74], after which the updates are synchronously committed to persistent memory before proceeding past the end of the atomic region. For example, Kiln [74] has a nonvolatile last-level cache to preserve partially updated data.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…In particular, all stores in a region should become persistent in an all-or-nothing-based manner before the next region persists, allowing programs to restart from the beginning of the interrupt region after failure recovery. For this purpose, Capri supports two-phase atomic stores similar to the hardware-based write-ahead logging approach [10,22,27,35,37,68,72]. Figure 1 shows Capri architecture and illustrates the two-phase atomic store strategy with the decoupled proxy buffer architecture.…”
Section: Architecture-supported Regionmentioning
confidence: 99%
“…The concept of persistence domain was initially linked to the feature of Asynchronous DRAM Refresh (ADR). ADR keeps DRAM in self-refresh mode and, more important, places pmem and the write pending queue (WPQ) of memory controller (MC) in the persistence domain [26,27,72], as it guarantees to flush data staying in the WPQ to pmem in case of a power outage. Later Intel extended ADR as eADR that further manages to flush all cache lines to pmem on a crash [2,3,13,24,30].…”
Section: Introductionmentioning
confidence: 99%