Nonblocking Persistent Software Transactional Memory

被引:1
|
作者
Beadle, H. Alan [1 ]
Cai, Wentao [1 ]
Wen, Haosen [1 ]
Scott, Michael L. [1 ]
机构
[1] Univ Rochester, Dept Comp Sci, Rochester, NY 14627 USA
关键词
transactional memory; non-volatile memory; lock-free algorithm; PHASE-CHANGE MEMORY; NONVOLATILE;
D O I
10.1109/HiPC50609.2020.00042
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Newly emerging nonvolatile alternatives to DRAM raise the possibility that applications might compute directly on long-lived data, rather than serializing them to and from a file system or database. To ensure crash consistency, such data must, like a file system or database, provide failure-atomic transactional semantics. Several persistent software transactional memory (STM) systems have been devised to provide these semantics, but only one-the OneFile system of Ramalhete et al.-is nonblocking. Nonblocking progress is desirable to avoid both performance anomalies due to process preemption or failures and deadlock due to priority inversion. Unfortunately, OneFile achieves nonblocking progress at the cost of 2 x space overhead, sacrificing much of the cost and density benefit of nonvolatile memory relative to DRAM. OneFile also requires extensive and intrusive changes to data declarations, and works only on a machine with double-width compare-and-swap (CAS) or load-linked/store-conditional (LL/SC) instructions. To address these limitations, we introduce QSTM, a non-blocking persistent STM that requires neither the modification of target data structures nor the availability of a wide CAS instruction. We describe our system, give arguments for safety and liveness, and compare performance to that of the Mnemosyne and OneFile persistent STM systems. We argue that modest performance costs (within a factor of 2 of OneFile in almost all cases) are easily justified by dramatically lower space overhead and higher programmer convenience.
引用
收藏
页码:283 / 293
页数:11
相关论文
共 50 条
  • [31] Understanding tradeoffs in software transactional memory
    Dice, Dave
    Shavit, Nir
    CGO 2007: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2007, : 21 - 33
  • [32] Revisiting Software Transactional Memory in Haskell
    Le, Matthew
    Yates, Ryan
    Fluet, Matthew
    ACM SIGPLAN NOTICES, 2016, 51 (12) : 105 - 113
  • [33] Reducing Memory Ordering Overheads in Software Transactional Memory
    Spear, Michael F.
    Michael, Maged M.
    Scott, Michael L.
    Wu, Peng
    CGO 2009: INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, PROCEEDINGS, 2009, : 13 - +
  • [34] Romulus: Efficient Algorithms for Persistent Transactional Memory
    Correia, Andreia
    Felber, Pascal
    Ramalhete, Pedro
    SPAA'18: PROCEEDINGS OF THE 30TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES, 2018, : 271 - 282
  • [35] Pisces: A Scalable and Efficient Persistent Transactional Memory
    Gu, Jinyu
    Yu, Qianqian
    Wang, Xiayang
    Wang, Zhaoguo
    Zang, Binyu
    Guan, Haibing
    Chen, Haibo
    PROCEEDINGS OF THE 2019 USENIX ANNUAL TECHNICAL CONFERENCE, 2019, : 913 - 928
  • [36] Brief Announcement: Hardware Transactional Persistent Memory
    Giles, Ellis
    Doshi, Kshitij
    Varman, Peter
    SPAA'18: PROCEEDINGS OF THE 30TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES, 2018, : 227 - 230
  • [37] Empirical Study of Transactional Management for Persistent Memory
    Shu, Hongping
    Chen, Hongyu
    Liu, Hao
    Lu, Youyou
    Hu, Qingda
    Shu, Jiwu
    2018 7TH IEEE NON-VOLATILE MEMORY SYSTEMS AND APPLICATIONS SYMPOSIUM (NVMSA 2018), 2018, : 61 - 66
  • [38] TENET: Memory Safe and Fault Tolerant Persistent Transactional Memory
    Krishnan, R. Madhava
    Zhou, Diyu
    Kim, Wook-Hee
    Kannan, Sudarsun
    Kashyap, Sanidhya
    Min, Changwoo
    PROCEEDINGS OF THE 21ST USENIX CONFERENCE ON FILE AND STORAGE TECHNOLOGIES, FAST 2023, 2023, : 247 - 264
  • [39] Transactional Composition of Nonblocking Data Structures
    Cai, Wentao
    Wen, Haosen
    Scott, Michael L.
    PROCEEDINGS OF THE 35TH ACM SYMPOSIUM ON PARALLELISM IN ALGORITHMS AND ARCHITECTURES, SPAA 2023, 2023, : 187 - 197
  • [40] Impact of Software Transactional Memory in Mobile Devices
    Kim, Junwhan
    Lee, Seong-hee
    2014 IEEE INTERNATIONAL CONFERENCE ON CONSUMER ELECTRONICS (ICCE), 2014, : 302 - 303