Font Size: a A A

Design And Implementation Of An Efficient And Wear-aware Allocator For Non-Volatile Memory

Posted on:2018-02-13Degree:MasterType:Thesis
Country:ChinaCandidate:J S ZhuFull Text:PDF
GTID:2428330590977681Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Since Non-Volatile Memory(NVM)has the characteristics of fast speed of read and write,byte-addressable and persistence,it promises a DRAM replacement in computer systems.However,the write imbalance problem limits the use of NVM,meaning that frequent writes to a block of NVM can permanently damage NVM,which is also called wear-leveling problem.In most cases,applications request for memory using a memory allocator.Since traditional memory allocators do not take wear-leveling problem into account,they do not apply to NVM.A poorly designed memory allocator can cause damages to NVM in a very short period of time.Therefore,the researchers have proposed a number of special memory allocators for NVM.However,our experiments show that their performance,wear-leveling strategies and total memory usage can not reach a good range.Take such a situation into account,this thesis propose a new memory allocator for NVM,which is called Wamalloc with the properties of efficiency,scalability,wear-leveling and low memory consumption.Aiming at the characteristics of high efficiency and scalability,thread cache and low-level optimization are adopted.Aiming at wear-leveling,a hybrid strategy is proposed.In order to meet the requirement of low memory consumption,some special design and implementation are adopted.We implemented a prototype of Wamalloc using C,which is an application level library not involving operating system and hardware modifications.In the evaluations,we compared Wamalloc with NVMalloc in terms of wearleveling,memory consumption and allocation latency.What's more,we also compared Wamalloc with glibc malloc in terms of allocation latency.NVMalloc is the main representative of NVM allocators,and glibc malloc is the main representative of traditional memory allocators.The evaluations show that the wear-leveling policy of Wamalloc outperforms that of NVMalloc by 30%,and the total memory consumption of Wamalloc outperforms that of NVMalloc by60%.In addition,allocation latency of Wamalloc is less than NVMalloc and glibc malloc by97% and 98%.
Keywords/Search Tags:non-volatile memory, memory allocator, wear-leveling, scalability
PDF Full Text Request
Related items