论文标题

nvtraverse:在NVRAM数据结构中,目的地比旅程更重要

NVTraverse: In NVRAM Data Structures, the Destination is More Important than the Journey

论文作者

Friedman, Michal, Ben-David, Naama, Wei, Yuanhao, Blelloch, Guy E., Petrank, Erez

论文摘要

最近的快速,密集,字节可调的非易失性内存的可用性导致人们对设计和指定可以从系统崩溃中恢复的耐用数据结构的问题增加了兴趣。但是,设计有效且满足正确性标准的耐用并发数据结构已被证明非常困难,导致许多算法在并发设置中效率低下或不正确。在本文中,我们提出了一种一般转换,该转换从称为遍历数据结构(我们正式定义)的通用类中采用无锁数据结构,并将其自动转换为NVRAM设置的数据结构的实现,该数据结构可证明可持久可持久线性化且高效。转换取决于许多数据结构操作从不需要持续存在的遍历阶段开始的观察结果,因此我们只有在遍历到达其目的地时才开始持续存在。我们通过在Intel最近发布的Optane DC持久记忆的系统上进行广泛的测量来证明转型的效率,这表明它可以在许多工作负载上胜过竞争对手。

The recent availability of fast, dense, byte-addressable non-volatile memory has led to increasing interest in the problem of designing and specifying durable data structures that can recover from system crashes. However, designing durable concurrent data structures that are efficient and also satisfy a correctness criterion has proven to be very difficult, leading many algorithms to be inefficient or incorrect in a concurrent setting. In this paper, we present a general transformation that takes a lock-free data structure from a general class called traversal data structure (that we formally define) and automatically transforms it into an implementation of the data structure for the NVRAM setting that is provably durably linearizable and highly efficient. The transformation hinges on the observation that many data structure operations begin with a traversal phase that does not need to be persisted, and thus we only begin persisting when the traversal reaches its destination. We demonstrate the transformation's efficiency through extensive measurements on a system with Intel's recently released Optane DC persistent memory, showing that it can outperform competitors on many workloads.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源