Font Size: a A A

Research On Key Technologies Of Software And Hardware Optimizations Based On Emerging Non-volatile Memory

Posted on:2018-08-29Degree:DoctorType:Dissertation
Country:ChinaCandidate:Y OuFull Text:PDF
GTID:1368330569998422Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Big data processing and data-intensive applications bring higher demands on storage systems' bandwidth,delay and reliability.Even with improvement of traditional disk-based storage systems,they still can not meet current needs.The emerging non-volatile memories have the advantages of non-volatility,high performance,low latency and low power consumption.On one hand,the emerging non-volatile memory coming with disadvantages,including long write latency and limited writes cycles,introduces new problems to the hardware and software design of the computer system.On the other hand,most existing techniques on software and hardware design come directly from disk-based storage without fully considering the characteristics of emerging non-volatile memory,which hardly takes advantage of emerging non-volatile memory.This dissertation studies the software and hardware optimizations including the file system,software I/O stack,solid state disk reliability and high-performance storage devices.The main contributions and innovation are as follows:(1)Proposed a new index scheme for flash file system(NIFFS)The data structure and index of traditional file systems are designed based on hard disks without considering the characteristics of flash memory.Implying flash memory on traditional file systems will bring extra writes which results in poor performance and poor endurance.This dissertation presents a new index scheme for flash file system.Firstly,it reduces writes by designing a flash-friendly data layout view,inode structure and data organization.Secondly,the design of a hybrid hash strategy improves the efficiency of directory index.Thirdly,this dissertation proposes an adaptive file data index method,which effectively reduces the overhead of data index.The experimental results show that,NIFFS effectively improves the index performance by 25% to 50%,and outperforms the state-of-the-art file systems both in throughput and endurance.(2)Studied the I/O stack optimization technologies based on emerging non-volatile memoryWith the development of emerging non-volatile memory,the performance of emerging storage devices has enhanced several orders of magnitude compared to hard disks.The software overhead of I/O stack has become an important factor limiting the performance of emerging storage systems.To address this problem,this dissertation studies the I/O stack optimization technologies based on emerging non-volatile memory.We design a simplified I/O stack for emerging non-volatile memory,and develop its driver.Moreover,we design a scatter/gather DMA process and multi-queue architecture to reduce the software overhead.The experimental results show that,the read bandwidth and write bandwidth of DRAM-based SSD prototype are increased by 46.4% and 28.1%,respectively.It achieves 300% and 482% improvement for read and write IOPS respectively.(3)Proposed an erasure-coding based solid state disk architectureThe flash memory cell has a nominal number of erase cycles,which limits the use of flash memory in write-intensive applications.In fact,when exceeding the nominal life,the flash memory cell can still be written,but its bit error rate increases rapidly with the increment of write/erase cycles.Erasure code is commonly used to reconstruct damaged data in a hard disk-based storage array.Intuitively,using erasure code introduces extra writes,making erasure code seem to be unsuitable for flash memory.However,its inherent error correction capability enables flash memory to survive beyond the nominal lifespan.This dissertation puts forward the design method of using erasure code in SSD and builds a theoretical model to analyze both the positive and negative impacts mentioned above.It depicts the implementation of an erasure-coding based SSD.The experimental results show that erasure code can effectively extend the flash memory lifespan more than 20 times.(4)Designed and implementing a high-performance PCIe SSD prototypeFlash memory has the characteristics of not-in-place updating and limited P/E cycles.The researchers focus on how to design a high-performance storage device to fully exploit the performance advantages of flash memory.This dissertation proposes a high-performance PCIe SSD architecture.We present the hardware implementation of PCIe DMA control logic,flash translation layer and flash channel controller.We introduce an exclusive log block based FTL,which allocates an exclusive log block for each update page,to reduce the request response time and garbage collection cost.In addition,a synchronous interface based out-of-order flash channel controller is designed and implemented.Finally,we implement the prototype called Gemini using the Xilinx virtex-6 FPGA.The experimental results show that Gemini achieves a read and write bandwidth of 3.6GB/s and 1.08GB/s data access respectively.It can also provide remarkable processing rates over 580,000 IOPS and 270,000 IOPS,with regard to 4KB random read and write respectively.
Keywords/Search Tags:emerging non-volatile memory, flash memory, file system, I/O stack, erasure code, solid state disk
PDF Full Text Request
Related items