Font Size: a A A

File Systems And Swap Mechanism For Non-Volatile Memory Systems

Posted on:2018-06-10Degree:DoctorType:Dissertation
Country:ChinaCandidate:X Z ChenFull Text:PDF
GTID:1318330533461389Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
The new generation of information technologies,such as big data,cloud computing,and mobile computing,grow rapidly.The involved applications need to process large amounts of fast-growing data in real time constantly.The existing data I/O between the processor and the storage system,however,is a severe performance bottleneck that fails existing computer systems to meet the high demands.Recently,emerging Non-Volatile Memories(NVMs)become the promising new generation of storage device for their non-volatility,high speed,and high density.In the revolutionary architecture using NVM,data is transferred between the processor and the storage device via high-speed memory bus,which is capable of breaking the bottleneck of traditional I/O.Nevertheless,the existing system software cannot fully exploit the characteristics and advantages of NVM.For example,existing in-memory file systems search the physical locations of file data via software routines and cause large performance overhead.This thesis proposes the design and optimization of new system software for NVM from three aspects: persistent in-memory file systems,hybrid memory file systems,and swap mechanisms.Different from existing work,this thesis fully exploits the complementary features of DRAM and NVM and further incorporates existing memory management of computer systems to boost the performance of system software.The major contributions of this thesis include:1)The design of high-performance persistent in-memory file system.We first propose the design framework of “file virtual address space”.In the framework,each open file has a contiguous independent virtual address space like a process.The file system accesses file data via file virtual address space,which is able to take advanatages of hardware MMU to boost the address mapping of file data.As a result,we may achieve high performance by avoiding the overhead for traversing software routines.Based on the framework,we design and implement a fully functional persistent in-memory file system,Sustainable In-Memory File System(SIMFS),in Linux kernel.We also extend SIMFS to user space by constructing dedicated library functions.We propose an “in-file execution” technique based on SIMFS.With in-file execution,the operations of applications perform directly on files via file virtual address space.Thus,the large overhead for transmitting data between user buffer and file system can be avoid.2)The design of file system for the storage system equipped with NVM and block devices.We propose a framework for storing file data of a single file across different medias.In the framework,a file can benefit from high-speed NVM and large-capacity block devices simultaneously.Based on the framework,we design and implement a Hybrid Memory File System(HMFS)in Linux kernel.To improve the performance of accesses,we propose to access file data via virtual address space and to identify and fetch data on block devices by a dedicated page fault handler.3)The design of swap mechanism for NVM-base swap area.We first find the “write count disparity” property of the memory accesses of applications and propose the “write tolerate” strategy for the writes upon NVM.We design and implement a swap mechanism called Refinery Swap that contains three components.First,to reduce the swap-in operations caused by write operations of applications,we propose a(1+?)-optimal algorithm NPS for swapping pages from NVM to DRAM based on write tolerate strategy.Then,we propose a finite state machine and multi-priority algorithm DPE to select the seldom write or inactive pages.Finally,we propose a wear-leveling strategy MLA taking advantages of the swap mechanism.We conduct extensive experiments on the proposed SIMFS,HMFS,and Refinery Swap with standard tools.The experimental results show that our techniques can manage NVM efficiently and provide high-performance data storing and processing for the operating system and applications.Specifically,the throughput of SIMFS achieves 89% of the theoretical upper bound of in-memory file systems,i.e.the throughput of memory bus.To the authors' knowledge,SIMFS is the fastest in-memory file system in the world.The proposed SIMFS and HMFS pass the tests of Huawei Company in real Linux systems.Besides,Refinery Swap pass the tests on simulator.In summary,we believe that the proposed techniques can properly meet the challenges of new storage system and stimulate the development of cloud computing and big data.
Keywords/Search Tags:Emerging non-volatile memories, in-memory file systems, hybrid file systems, swap mechniasms, virtual address space
PDF Full Text Request
Related items