Swapnil Haria (University of Wisconsin-Madison)
“In this work, we introduce minimally ordered durable (MOD) datastructures to lower flushing overheads by overlapping long-latency flushes to PM. We define MOD datastructures as those that enable failure-atomic sections (similar to transactions) with only a single ordering point in the common case. We present a simple recipe to create MOD datastructures from existing purely functional datastructures, allowing us to leverage significant research efforts from a different domain as opposed to handcrafting recoverable datastructures. We implement MOD datastructures using nondestructive updates and out-of-place writes to eliminate logging and most ordering points. On an update, a new updated copy (shadow) of the original datastructure is created without overwriting the original data.
We develop a C++ library of MOD datastructures with vector, map, set, stack and queue implementations. Our evaluation on systems with real persistent memory—Intel Optane DC Persistent Memory Modules—shows that MOD datastructures improve application performance by 60% on average compared to state-of-the-art STM systems for PM.”