分配器
计算机科学
线程(计算)
德拉姆
C动态内存分配
嵌入式系统
内存管理
并行计算
交错存储器
非易失性存储器
操作系统
计算机硬件
覆盖
作者
Chunhua Xiao,Lin Zhang,Mingliang Zhou
标识
DOI:10.1142/s0218126622500669
摘要
The nonvolatile main memory (NVMM) has the advantages of near-DRAM speed, byte-addressability, and persistence, and presents limitations in write durability. The memory allocator, a fundamental data structure of memory management, can effectively mitigate the wear speed, thereby prolonging the NVMM lifetime. Nevertheless, balancing the performance and writing reliability in single and multi-thread scenarios is still an open problem for NVMM allocators. In this paper, we propose a thread-level wear-aware allocator (Tnvmalloc) that divides the NVMM space into multiple management granularities and then dynamically selects the optimal blocks using a wear-leveling strategy based on allocation requests and wear records. Experiments show that the proposed Tnvmalloc provides more than 10 times improvement in wear-leveling than typical allocators Glibc malloc, NVMalloc, and nvm_malloc, which becomes obvious especially in multi-threaded scenarios. Moreover, when allocating large memory blocks, Tnvmalloc achieves three times faster than that of NVMalloc.
科研通智能强力驱动
Strongly Powered by AbleSci AI