R&D: Understanding and Improving Persistent Transactions on Optane DC Memory
Persistent transactional memory algorithms are able to scale, and recent optimizations for these algorithms lead to performance, with speedups as high as 6× at 16 threads.
This is a Press Release edited by StorageNewsletter.com on September 17, 2020 at 2:04 pmIEEE Xplore has published, in 2020 IEEE International Parallel and Distributed Processing Symposium (IPDPS) proceedings, an article written by Pantea Zardoshti, Michael Spear, Lehigh University, USA, Aida Vosoughi, and Garret Swart, Oracle Corp., USA.
Abstract: “Storing data structures in high-capacity byte-addressable persistent memory instead of DRAM or a storage device offers the opportunity to (1) reduce cost and power consumption compared with DRAM, (2) decrease the latency and CPU resources needed for an I/O operation compared with storage, and (3) allow for fast recovery as the data structure remains in memory after a machine failure. The first commercial offering in this space is Intel Optane Direct Connect (Optane DC) Persistent Memory. Optane DC promises access time within a constant factor of DRAM, with larger capacity, lower energy consumption, and persistence. We present an experimental evaluation of persistent transactional memory performance, and explore how Optane DC durability domains affect the overall results. Given that neither of the two available durability domains can deliver performance competitive with DRAM, we introduce and emulate a new durability domain, called PDRAM, in which the memory controller tracks enough information (and has enough reserve power) to make DRAM behave like a persistent cache of Optane DC memory.In this paper we compare the performance of these durability domains on several configurations of five persistent transactional memory applications. We find a large throughput difference, which emphasizes the importance of choosing the best durability domain for each application and system. At the same time, our results confirm that recently published persistent transactional memory algorithms are able to scale, and that recent optimizations for these algorithms lead to strong performance, with speedups as high as 6× at 16 threads.“