Memory Carousel: LLVM-Based Bitwise Wear Leveling for Nonvolatile Main Memory

被引:2
作者
Hoelscher, Nils [1 ]
Hakert, Christian [1 ]
Nassar, Hassan [2 ]
Chen, Kuan-Hsun [3 ]
Bauer, Lars [2 ]
Chen, Jian-Jia [1 ]
Henkel, Joerg [2 ]
机构
[1] TU Dortmund Univ, Design Automat Embedded Syst Grp, D-44227 Dortmund, Germany
[2] Karlsruhe Inst Technol, Chair Embedded Syst, D-76131 Karlsruhe, Germany
[3] Univ Twente, Chair Comp Architecture & Embedded Syst, NL-7500 AE Enschede, Netherlands
关键词
Bit rotation; intermediate representation (IR); LLVM; nonvolatile main memory; wear leveling; EFFICIENT;
D O I
10.1109/TCAD.2022.3228897
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Emerging nonvolatile memory yields, alongside many advantages, technical shortcomings, such as reduced cell lifetime. Although many wear-leveling approaches exist to extend the lifetime of such memories, usually a tradeoff for the granularity of wear leveling has to be made. Due to iterative write schemes (repeatedly sense and write), wear out of memory in certain systems is directly dependent on the written bit value and thus can be highly imbalanced, requiring dedicated bit-wise wear leveling. Such a bit-wise wear leveling so far has only be proposed together with a special hardware support. However, if no dedicated hardware solutions are available, especially for commercial off-the-shelf systems with nonvolatile memories, a software solution can be crucial for the system lifetime. In this work, we propose entirely software-based bit-wise wear leveling, where the position of bits within CPU words in the main memory is rotated on a regular basis. We leverage the LLVM intermediate representation to adjust load and store operations of the application with a custom compiler pass. Experimental evaluation shows that the lifetime by applying local rotation within the CPU word can be extended by a factor of up to 21x. We also show that our method can incorporate with coarser-grained wear leveling, e.g., on block granularity and assist achievement of higher lifetime improvements.
引用
收藏
页码:2527 / 2539
页数:13
相关论文
共 24 条
[1]  
Binkert Nathan, 2011, Computer Architecture News, V39, P1, DOI 10.1145/2024716.2024718
[2]  
Chen CH, 2012, DES AUT CON, P453
[3]   Contour: A Process Variation Aware Wear-Leveling Mechanism for Inodes of Persistent Memory File Systems [J].
Chen, Xianzhang ;
Sha, Edwin H. -M. ;
Wang, Xinxin ;
Yang, Chaoshu ;
Jiang, Weiwen ;
Zhuge, Qingfeng .
IEEE TRANSACTIONS ON COMPUTERS, 2021, 70 (07) :1034-1045
[4]  
Ferreira AP, 2010, DES AUT TEST EUROPE, P914
[5]  
Gogte V., 2019, PROC 17 USENIX C FIL, P1
[6]   Software-Managed Read and Write Wear-Leveling for Non-Volatile Main Memory [J].
Hakert, Christian ;
Chen, Kuan-Hsun ;
Schirmeier, Horst ;
Bauer, Lars ;
Genssler, Paul R. ;
von Der Bruggen, Georg ;
Amrouch, Hussam ;
Henkel, Jorg ;
Chen, Jian-Jia .
ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2022, 21 (01)
[7]  
Hakert C, 2020, ASIA S PACIF DES AUT, P651, DOI 10.1109/ASP-DAC47756.2020.9045418
[8]   Enhanced Wear-Rate Leveling for PRAM Lifetime Improvement Considering Process Variation [J].
Han, Yinhe ;
Dong, Jianbo ;
Weng, Kaiheng ;
Wang, Ying ;
Li, Xiaowei .
IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, 2016, 24 (01) :92-102
[9]   Lewat: A Lightweight, Efficient, and Wear-Aware Transactional Persistent Memory System [J].
Huang, Kaixin ;
Li, Sumin ;
Huang, Linpeng ;
Tan, Kian-Lee ;
Mei, Hong .
IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2021, 32 (03) :649-664
[10]  
Khan M. N. I., 2018, SENSING PHASE CHANGE, P81