10.1145/3323165.3323166acmconferencesArticle/Chapter ViewAbstractPublication PagesspaaConference Proceedings
research-article
Free Access

Persistent Atomics for Implementing Durable Lock-Free Data Structures for Non-Volatile Memory (Brief Announcement)

ABSTRACT

This brief announcement presents a persist ordering problem uncovered in implementing durable lock-free data structures for non-volatile memory, and proposes a hardware solution with persistent atomics in the Arm instruction set architecture.

References

  1. Mihnea Andrei, Christian Lemke, Günter Radestock, Robert Schulze, Carsten Thiel, Rolando Blanco, Akanksha Meghlan, Muhammad Sharique, Sebastian Seifert, Surendra Vishnoi, et al. 2017. SAP HANA adoption of non-volatile memory. Proceedings of the VLDB Endowment 10, 12 (2017), 1754--1765. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Joy Arulraj, Justin Levandoski, Umar Farooq Minhas, and Per-Ake Larson. 2018. Bztree: A high-performance latch-free range index for non-volatile memory. Proceedings of the VLDB Endowment 11, 5 (2018), 553--565.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Naama Ben-David, Guy E. Blelloch, and Yuanhao Wei. 2018. Making Concurrent Algorithms Detectable. CoRRabs/1806.04780 (2018). arXiv:1806.04780 http://arxiv.org/abs/1806.04780Google ScholarGoogle Scholar
  4. HMC Consortium. 2015. Hybrid Memory Cube Specification 2.1. Technical Report.Google ScholarGoogle Scholar
  5. Tudor David, Aleksandar Dragojevic, Rachid Guerraoui, and Mihail Igor Zablotchi. 2017. Log-Free Concurrent Data Structures. Technical Report.Google ScholarGoogle Scholar
  6. Michal Friedman, Maurice Herlihy, Virendra Marathe, and Erez Petrank. 2018. A persistent lock-free queue for non-volatile memory. In Proceedings of the 23rdACM SIGPLAN Symposium on Principles and Practice of Parallel Programming.ACM, 28--40.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Timothy L Harris. 2001. A pragmatic implementation of non-blocking linked-lists. In International Symposium on Distributed Computing. Springer, 300--314. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Yihe Huang, Matej Pavlovic, Virendra Marathe, Margo Seltzer, Tim Harris, and Steve Byan. 2018. Closing the performance gap between volatile and persistent key-value stores using cross-referencing logs. In 2018 (USENIX)Annual Technical Conference ({USENIX}{ATC}18). USENIX Association, 967--979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Joseph Izraelevitz, Hammurabi Mendes, and Michael L Scott. 2016. Brief announcement: Preserving happens-before in persistent memory. In Proceedings of the 28th ACM Symposium on Parallelism in Algorithms and Architectures. ACM, 157--159.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Joseph Izraelevitz, Hammurabi Mendes, and Michael L Scott. 2016. Lineariz-ability of persistent memory objects under a full-system-crash failure model. In International Symposium on Distributed Computing. Springer, 313--327.Google ScholarGoogle ScholarCross RefCross Ref
  11. Aasheesh Kolli, Vaibhav Gogte, Ali Saidi, Stephan Diestelhorst, Peter M Chen, Satish Narayanasamy, and Thomas F Wenisch. 2017. Language-level persistency. InComputer Architecture (ISCA), 2017 ACM/IEEE 44th Annual International Symposium on. IEEE, 481--493. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Aasheesh Kolli, Vaibhav Gogte, Ali Saidi, Stephan Diestelhorst, Peter M Chen,Satish Narayanasamy, and Thomas F Wenisch. 2017. Tarp: Translating acquire-release persistency.Google ScholarGoogle Scholar
  13. Arm Ltd. 2016. ARM Architecture Reference Manual ARMv8, for ARMv8-A architecture profile. Technical Report. https://developer.arm.com/docs/ddi0487/a/arm-architecture-reference-manual-armv8-for-armv8-a-architecture-profileGoogle ScholarGoogle Scholar
  14. Arm Ltd. 2016. ARM Architecture Reference Manual Supplement ARM v8.1, for ARM v8-A architecture profile Documentation. Technical Report. https://developer.arm.com/docs/ddi0557/latestGoogle ScholarGoogle Scholar
  15. Darko Makreshanski, Justin Levandoski, and Ryan Stutsman. 2015. To lock,swap, or elide: On the interplay of hardware transactional memory and lock-free indexing. Proceedings of the VLDB Endowment 8, 11 (2015), 1298--1309. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Maged M Michael and Michael L Scott. 1995.Simple, fast, and practical non-blocking and blocking concurrent queue algorithms. Technical Report. ROCHESTER UNIV NY DEPT OF COMPUTER SCIENCE.Google ScholarGoogle Scholar
  17. Matej Pavlovic, Alex Kogan, Virendra J Marathe, and Tim Harris. 2018. Brief Announcement: Persistent Multi-Word Compare-and-Swap. In Proceedings of the 2018 ACM Symposium on Principles of Distributed Computing. ACM, 37--39.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. SNIA. 2017. Persistent Memory Atomics and Transactions v1.2. Technical Report.Google ScholarGoogle Scholar
  19. SNIA. 2019. NVM PM Remote Access for High Availability v1.08. Technical Report.Google ScholarGoogle Scholar
  20. John D Valois. 1995. Lock-free linked lists using compare-and-swap. In Proceedings of the fourteenth annual ACM symposium on Principles of distributed computing. ACM, 214--222. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. John David Valois. 1996. Lock-free data structures. (1996).Google ScholarGoogle Scholar
  22. Tianzheng Wang, Justin Levandoski, and Per-Ake Larson. 2018. Easy lock-free indexing in non-volatile memory. In 2018 IEEE 34th International Conference on Data Engineering (ICDE). IEEE, 461--472.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Persistent Atomics for Implementing Durable Lock-Free Data Structures for Non-Volatile Memory (Brief Announcement)

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Article Metrics

            • Downloads (Last 12 months)194
            • Downloads (Last 6 weeks)31

            Other Metrics

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!

          To help support our community working remotely during COVID-19, we are making all work published by ACM in our Digital Library freely accessible through June 30, 2020. Learn more