Software-Managed Read and Write Wear-Leveling for Non-Volatile Main Memory

Research output: Contribution to journalResearch articleContributedpeer-review

Contributors

  • Christian Hakert - , Dortmund University of Technology (Author)
  • Kuan Hsun Chen - , Dortmund University of Technology (Author)
  • Horst Schirmeier - , Dortmund University of Technology (Author)
  • Lars Bauer - , Karlsruhe Institute of Technology (Author)
  • Paul R. Genssler - , University of Stuttgart (Author)
  • Georg Von Der Brüggen - , Max Planck Institute for Software Systems (Author)
  • Hussam Amrouch - , University of Stuttgart (Author)
  • Jörg Henkel - , Karlsruhe Institute of Technology (Author)
  • Jian Jia Chen - , Dortmund University of Technology (Author)

Abstract

In-memory wear-leveling has become an important research field for emerging non-volatile main memories over the past years. Many approaches in the literature perform wear-leveling by making use of special hardware. Since most non-volatile memories only wear out from write accesses, the proposed approaches in the literature also usually try to spread write accesses widely over the entire memory space. Some non-volatile memories, however, also wear out from read accesses, because every read causes a consecutive write access. Software-based solutions only operate from the application or kernel level, where read and write accesses are realized with different instructions and semantics. Therefore different mechanisms are required to handle reads and writes on the software level. First, we design a method to approximate read and write accesses to the memory to allow aging aware coarse-grained wear-leveling in the absence of special hardware, providing the age information. Second, we provide specific solutions to resolve access hot-spots within the compiled program code (text segment) and on the application stack. In our evaluation, we estimate the cell age by counting the total amount of accesses per cell. The results show that employing all our methods improves the memory lifetime by up to a factor of 955×.

Details

Original languageEnglish
Article number5
Number of pages24
JournalACM transactions on embedded computing systems
Volume21
Issue number1
Publication statusPublished - 10 Feb 2022
Peer-reviewedYes
Externally publishedYes

External IDs

ORCID /0000-0002-1427-9343/work/167216816

Keywords

ASJC Scopus subject areas

Keywords

  • age approximation, Non-volatile memory, read-destructive, wear-leveling