Brief Announcement: On Implementing Wear Leveling in Persistent Synchronization Structures

Authors Jakeb Chouinard, Kush Kansara, Xialin Liu, Nihal Potdar, Wojciech Golab



PDF
Thumbnail PDF

File

LIPIcs.DISC.2023.38.pdf
  • Filesize: 0.66 MB
  • 7 pages

Document Identifiers

Author Details

Jakeb Chouinard
  • Department of Mechanical and Mechatronics Engineering, University of Waterloo, Canada
Kush Kansara
  • Department of Electrical and Computer Engineering, University of Waterloo, Canada
Xialin Liu
  • Department of Electrical and Computer Engineering, University of Waterloo, Canada
Nihal Potdar
  • Department of Electrical and Computer Engineering, University of Waterloo, Canada
Wojciech Golab
  • Department of Electrical and Computer Engineering, University of Waterloo, Canada

Acknowledgements

We thank the anonymous reviewers for their helpful feedback on this work and their insightful suggestions regarding future research directions.

Cite AsGet BibTex

Jakeb Chouinard, Kush Kansara, Xialin Liu, Nihal Potdar, and Wojciech Golab. Brief Announcement: On Implementing Wear Leveling in Persistent Synchronization Structures. In 37th International Symposium on Distributed Computing (DISC 2023). Leibniz International Proceedings in Informatics (LIPIcs), Volume 281, pp. 38:1-38:7, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2023)
https://doi.org/10.4230/LIPIcs.DISC.2023.38

Abstract

The last decade has witnessed an explosion of research on persistent memory, which combines the low access latency of dynamic random access memory (DRAM) with the durability of secondary storage. Intel’s implementation of persistent memory, called Optane, comes close to realizing the game-changing potential of persistent memory in terms of performance; however, it also suffers from limited endurance and relies on a proprietary wear leveling mechanism to mitigate memory cell wear-out. The traditional embedded approach to wear leveling, in which the storage device itself maps logical addresses to physical addresses, can be fast and energy-efficient, but it is also relatively inflexible and can lead to missed opportunities for optimization. An alternative school of thought, exemplified by "open channel" solid state drives (SSDs), delegates responsibility for wear leveling to software, where it can be tailored to specific applications. In this research, we consider a hypothetical hardware platform where the same paradigm is applied to the persistent memory device, and ask how the wear leveling mechanism can be co-designed with synchronization structures that generate highly skewed memory access patterns. Building on the recent work of Liu and Golab, we implement an improved wear leveling atomic counter by leveraging hardware transactional memory in a novel way. Our solution is close to optimal with respect to both space complexity and measured performance.

Subject Classification

ACM Subject Classification
  • Theory of computation → Shared memory algorithms
Keywords
  • persistent memory
  • transactional memory
  • wear leveling
  • atomic counter
  • concurrency
  • fault tolerance
  • theory

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads

References

  1. Marcos K. Aguilera and S. Frølund. Strict linearizability and the power of aborting. Technical Report HPL-2003-241, Hewlett-Packard Labs, 2003. Google Scholar
  2. Ryan Berryhill, Wojciech Golab, and Mahesh Tripunitara. Robust shared objects for non-volatile main memory. In Proc. of the 19th International Conference on Principles of Distributed Systems (OPODIS), pages 20:1-20:17, 2016. Google Scholar
  3. Frank Hady. Intel Optane technology delivers new levels of endurance, 2019. URL: https://www.intel.com/content/www/us/en/architecture-and-technology/optane-technology/delivering-new-levels-of-endurance-article-brief.html.
  4. Free Software Foundation Inc. Transactional memory intrinsics. [last accessed 5/01/2023]. URL: https://gcc.gnu.org/onlinedocs/gcc/x86-transactional-memory-intrinsics.html.
  5. Joseph Izraelevitz, Jian Yang, Lu Zhang, Juno Kim, Xiao Liu, Amirsaman Memaripour, Yun Joon Soh, Zixuan Wang, Yi Xu, Subramanya R. Dulloor, Jishen Zhao, and Steven Swanson. Basic performance measurements of the Intel Optane DC persistent memory module. CoRR, abs/1903.05714, 2019. URL: https://arxiv.org/abs/1903.05714.
  6. Xialin Liu and Wojciech Golab. Brief announcement: Towards a theory of wear leveling in persistent data structures. In Proc. of the 41st ACM Symposium on Principles of Distributed Computing (PODC), pages 220-223, 2022. Google Scholar
  7. Ivy Bo Peng, Maya B. Gokhale, and Eric W. Green. System evaluation of the Intel Optane byte-addressable NVM. In Proc. of the International Symposium on Memory Systems (MEMSYS), pages 304-315, 2019. Google Scholar
  8. Ivan Luiz Picoli, Niclas Hedam, Philippe Bonnet, and Pinar Tözün. Open-channel SSD (what is it good for). In In Proc. of the 10th Conference on Innovative Data Systems Research (CIDR), 2020. Google Scholar
  9. Andy Rudoff and the Intel PMDK Team. Persistent memory development kit. [last accessed 5/01/2023]. URL: https://pmem.io/pmdk/.
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail