Title
PETRA: Persistent Transactional Non-blocking Linked Data Structures
Abstract
AbstractEmerging byte-addressable Non-Volatile Memories (NVMs) enable persistent memory where process state can be recovered after crashes. To enable applications to rely on persistent data, durable data structures with failure-atomic operations have been proposed. However, they lack the ability to allow users to execute a sequence of operations as transactions. Meanwhile, persistent transactional memory (PTM) has been proposed by adding durability to Software Transactional Memory (STM). However, PTM suffers from high performance overheads and low scalability due to false aborts, logging, and ordering constraints on persistence.In this article, we propose PETRA, a new approach for constructing persistent transactional linked data structures. PETRA natively supports transactions, but unlike PTM, relies on the high-level information from the data structure semantics. This gives PETRA unique advantages in the form of high performance and high scalability. Our experimental results using various benchmarks demonstrate the scalability of PETRA in all workloads and transaction sizes. PETRA outperforms the state-of-the-art PTMs by an order of magnitude in transactions of size greater than one, and demonstrates superior performance in transactions of size one.
Year
DOI
Venue
2021
10.1145/3446391
ACM Transactions on Architecture and Code Optimization
Keywords
DocType
Volume
Persistent memory, concurrency, transactional data structure, nonblocking data structure, non-volatile memory, durability
Journal
18
Issue
ISSN
Citations 
2
1544-3566
0
PageRank 
References 
Authors
0.34
0
4
Name
Order
Citations
PageRank
Ramin Izadpanah112.05
Christina L. Peterson201.69
Yan Solihin32057111.56
Damian Dechev48122.87