CLC number: TP212
On-line Access: 2024-08-27
Received: 2023-10-17
Revision Accepted: 2024-05-08
Crosschecked: 2023-03-01
Cited: 0
Clicked: 2101
Citations: Bibtex RefMan EndNote GB/T7714
Zhiwang YU, Runyu ZHANG, Chaoshu YANG, Shun NIE, Duo LIU. An efficient wear-leveling-aware multi-grained allocator for persistent memory file systems
@article{title="An efficient wear-leveling-aware multi-grained allocator for persistent memory file systems
author="Zhiwang YU, Runyu ZHANG, Chaoshu YANG, Shun NIE, Duo LIU",
journal="Frontiers of Information Technology & Electronic Engineering",
volume="24",
number="5",
pages="688-702",
year="2023",
publisher="Zhejiang University Press & Springer",
doi="10.1631/FITEE.2200468"
}
%0 Journal Article
%T An efficient wear-leveling-aware multi-grained allocator for persistent memory file systems
%A Zhiwang YU
%A Runyu ZHANG
%A Chaoshu YANG
%A Shun NIE
%A Duo LIU
%J Frontiers of Information Technology & Electronic Engineering
%V 24
%N 5
%P 688-702
%@ 2095-9184
%D 2023
%I Zhejiang University Press & Springer
%DOI 10.1631/FITEE.2200468
TY - JOUR
T1 - An efficient wear-leveling-aware multi-grained allocator for persistent memory file systems
A1 - Zhiwang YU
A1 - Runyu ZHANG
A1 - Chaoshu YANG
A1 - Shun NIE
A1 - Duo LIU
J0 - Frontiers of Information Technology & Electronic Engineering
VL - 24
IS - 5
SP - 688
EP - 702
%@ 2095-9184
Y1 - 2023
PB - Zhejiang University Press & Springer
ER -
DOI - 10.1631/FITEE.2200468
Abstract: persistent memory (PM) file systems have been developed to achieve high performance by exploiting the advanced features of PMs, including nonvolatility, byte addressability, and dynamic random access memory (DRAM) like performance. Unfortunately, these PMs suffer from limited write endurance. Existing space management strategies of PM file systems can induce a severely unbalanced wear problem, which can damage the underlying PMs quickly. In this paper, we propose a wear-leveling-aware multi-grained allocator, called WMAlloc, to achieve the wear leveling of PMs while improving the performance of file systems. WMAlloc adopts multiple min-heaps to manage the unused space of PMs. Each heap represents an allocation granularity. Then, WMAlloc allocates less-worn blocks from the corresponding min-heap for allocation requests. Moreover, to avoid recursive split and inefficient heap locations in WMAlloc, we further propose a bitmap-based multi-heap tree (BMT) to enhance WMAlloc, namely, WMAlloc-BMT. We implement WMAlloc and WMAlloc-BMT in the Linux kernel based on NOVA, a typical PM file system. Experimental results show that, compared with the original NOVA and dynamic wear-aware range management (DWARM), which is the state-of-the-art wear-leveling-aware allocator of PM file systems, WMAlloc can, respectively, achieve 4.11× and 1.81× maximum write number reduction and 1.02× and 1.64× performance with four workloads on average. Furthermore, WMAlloc-BMT outperforms WMAlloc with 1.08× performance and achieves 1.17× maximum write number reduction with four workloads on average.
[1]Chen XZ, Sha EHM, Zeng YS, et al., 2018. Efficient wear leveling for inodes of file systems on persistent memories. Design, Automation & Test in Europe Conf & Exhibition, p.1524-1527.
[2]Condit J, Nightingale EB, Frost C, et al., 2009. Better I/O through byte-addressable, persistent memory. Proc ACM SIGOPS 22nd Symp on Operating Systems Principles, p.133-146.
[3]Dulloor SR, Kumar S, Keshavamurthy A, et al., 2014. System software for persistent memory. Proc 9th European Conf on Computer Systems, Article 15.
[4]Gogte V, Wang W, Diestelhorst S, et al., 2019. Software wear management for persistent memories. Proc 17th USENIX Conf on File and Storage Technologies, p.45-63.
[5]Hakert C, Chen KH, Yayla M, et al., 2020. Software-based memory analysis environments for in-memory wear-leveling. Proc 25th Asia and South Pacific Design Automation Conf, p.651-658.
[6]Huang FT, Feng D, Xia W, et al., 2016. Security RBSG: protecting phase change memory with security-level adjustable dynamic mapping. IEEE Int Parallel and Distributed Processing Symp, p.1081-1090.
[7]Huang FT, Feng D, Hua Y, et al., 2017. A wear-leveling-aware counter mode for data encryption in non-volatile memories. Design, Automation & Test in Europe Conf & Exhibition, p.910-913.
[8]Huang JC, Peng M, Wu LB, et al., 2022. Lamina: low overhead wear leveling for NVM with bounded tail. Proc 27th Asia and South Pacific Design Automation Conf, p.377-382.
[9]Intel, 2015. 3D XPoint Unveiled: the Next Breakthrough in Memory Technology. https://builders.intel.com/datacenter/social-hub/video/3d-xpoint-unveiled-the-next-breakthrough-in-memory-technology [Accessed on Oct. 11, 2022].
[10]Kadekodi R, Lee SK, Kashyap S, et al., 2019. SplitFS: reducing software overhead in file systems for persistent memory. Proc 27th ACM Symp on Operating Systems Principles, p.494-508.
[11]Li W, Shuai ZQ, Xue CJ, et al., 2019. A wear leveling aware memory allocator for both stack and heap management in PCM-based main memory systems. Design, Automation & Test in Europe Conf & Exhibition, p.228-233.
[12]Liu D, Lin Y, Huang PC, et al., 2017. Durable and energy efficient in-memory frequent-pattern mining. IEEE Trans Comput-Aided Des Integr Circ Syst, 36(12):2003-2016.
[13]Moraru I, Andersen DG, Kaminsky M, et al., 2013. Consistent, durable, and safe memory management for byte-addressable non volatile main memory. Proc 1st ACM SIGOPS Conf on Timely Results in Operating Systems, Article 1.
[14]Network Appliance, Inc., 2022. The Postmark Filesystem Benchmark. https://github.com/wolfwood/postmark [Accessed on Oct. 11, 2022].
[15]Nie S, Yang CS, Zhang RY, et al., 2020. WMAlloc: a wear-leveling-aware multi-grained allocator for persistent memory file systems. IEEE 26th Int Conf on Parallel and Distributed Syst, p.510-517.
[16]Ou JX, Shu JW, Lu YY, 2016. A high performance file system for non-volatile main memory. Proc 11th European Conf on Computer Systems, Article 12.
[17]Palangappa PM, Li JY, Mohanram K, 2016. WOM-code solutions for low latency and high endurance in phase change memory. IEEE Trans Comput, 65(4):1025-1040.
[18]Qureshi MK, Karidis JP, Franceschini M, et al., 2009. Enhancing lifetime and security of PCM-based main memory with start-gap wear leveling. Proc 42nd Annual IEEE/ACM Int Symp on Microarchitecture, p.14-23.
[19]Qureshi MK, Seznec A, Lastras LA, et al., 2011. Practical and secure PCM systems by online detection of malicious write streams. Proc 17th Int Conf on High Performance Computer Architecture, p.478-489.
[20]Seong NH, Woo DH, Lee HH, 2011. Security Refresh: protecting phase-change memory against malicious wear out. IEEE Micro, 31(1):119-127.
[21]Sha EHM, Chen XZ, Zhuge QF, et al., 2016. A new design of in-memory file system based on file virtual address framework. IEEE Trans Comput, 65(10):2959-2972.
[22]Tarasov V, Zadok E, Shepler S, 2016. Filebench: a flexible framework for file system benchmarking. Login, 41(1):6-12.
[23]Wu L, Zhuge QF, Sha EHM, et al., 2018. DWARM: a wear-aware memory management scheme for in-memory file systems. Fut Gener Comput Syst, 88:1-15.
[24]Xu J, Swanson S, 2016. NOVA: a log-structured file system for hybrid volatile/non-volatile main memories. Proc 14th USENIX Conf on File and Storage Technologies, p.323-338.
[25]Yang CS, Liu D, Zhang RY, et al., 2020a. Efficient multi-grained wear leveling for inodes of persistent memory file systems. Proc 57th ACM/IEEE Design Automation Conf, p.1-6.
[26]Yang CS, Liu D, Zhang RY, et al., 2020b. Optimizing performance of persistent memory file systems using virtual superpages. Design, Automation & Test in Europe Conf & Exhibition, p.714-719.
[27]Yu SP, Xiao N, Deng MZ, et al., 2015. WAlloc: an efficient wear-aware allocator for non-volatile main memory. Proc 34th IEEE Int Performance Computing and Communications Conf, p.1-8.
Open peer comments: Debate/Discuss/Question/Opinion
<1>