Persistent memory is real!
In early 2019, Intel launched the long-anticipated Optane Data Center Persistent Memory Module. This breakthrough represents the convergence of primary and secondary storage media into a single layer in the memory hierarchy that combines the performance benefits of conventional main memory with the durability of secondary storage. Harnessing these performance benefits in multi-core architectures requires a careful rethinking of concurrent data structures and synchronization algorithms.
My research group purchased a four-socket server with Optane persistent memory in 2019 from Dell.
PODC 2019 Tutorial
My research group delivered a half-day tutorial on persistent memory at PODC 2019. The tutorial included the following presentations:
- Introduction to Persistent Memory [PDF]
- Persistent Memory Emulation and Programming [PDF]
- Linearizability Testing of Multi-Word Synchronization Primitives [PDF]
- Algorithms: Recoverable Mutex and Consensus [PDF]
Publications
My research group and collaborators have published several papers on the topic of recovering from crashes using persistent memory:
- NUMA-Aware RME Lock (SPAA 2022)
[ACM DL] - Detectable Sequential Specifications (DISC 2021 and ApPLIED@PODC 2022)
[DISC PDF] [ApPLIED PDF] [code] - Recoverable Consensus Hierarchy (SPAA 2020)
[ACM DL] - Recoverable Mutual Exclusion Under System-Wide Failures (PODC 2018)
[PDF] - Recoverable Mutual Exclusion in Sub-Logarithmic Time (PODC 2017)
[PDF] - Recoverable Mutual Exclusion (PODC 2016)
[PDF of extended draft] - Recoverable Linearizability (OPODIS 2015)
[PDF]
Funding acknowledgment
This research is supported in part by an Ontario Early Researcher Award, by a Google Faculty Research Award, and by an NSERC Collaborative Research and Development Grant.