Font Size: a A A

Non-Volatile Memory Allocator With Data Consistency Guarantee

Posted on:2023-10-12Degree:MasterType:Thesis
Country:ChinaCandidate:H XuFull Text:PDF
GTID:2568307043474604Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Byte-addressable Non-volatile memory(NVM)enables applications to directly access via load and store instructions.Programmers can build in-memory data structures on NVM without serialization.However,the traditional file system can not support writing to NVM at byte granularity.The dynamic random access memory(DRAM)allocator can efficiently manage the NVM space.But the NVM has the non-volatile characteristic.After system crashes,the metadata of the allocator may be partially written to NVM,resulting in data loss.Existing NVM allocators can ensure the consistency of NVM metadata,but the performance and the recovery speed are very low.Besides,existing work decouples the allocator consistency with the data consistency,resulting in the duplicate operations of consistency guarantee.To address these problems,we propose an allocator that guarantees the data and the metadata consistency,named Calloc.Calloc uses a lightweight metadata design to reduce the overhead of metadata writing.Calloc also uses lock-free data structures to improve the performance of the allocator.To reduce the consistency overhead of the allocator,Calloc only guarantees the consistency of the core metadata,the remaining metadata can be built by the core metadata after the system crash.Calloc uses the copy-on-write mechanism to ensure both the metadata consistency and the data consistency and reduce the instructions of explicitly flushing data to the NVM.To improve the recovery performance,Calloc uses an efficient multi-threads recovery algorithm.The results show that on the real NVM platform,the performance of Calloc is 2.6 to6.8 times faster than the state-of-the-art works.In the meanwhile,the recovery time of Calloc is also reduced by more than 90% compared with other work.
Keywords/Search Tags:Non-Volatile Memory, Memory Allocator, Data Consistency
PDF Full Text Request
Related items