The Fundamental Limit of Flash Random Write Performance: Understanding, Analysis and Performance Modelling

The Fundamental Limit of Flash Random Write Performance: Understanding, Analysis and Performance Modelling

RZ 3771 (# 99781) 03/31/2010 Computer Science 15 pages Research Report The Fundamental Limit of Flash Random Write Performance: Understanding, Analysis and Performance Modelling X.-Y. Hu, R. Haas IBM Research – Zurich 8803 Rüschlikon Switzerland LIMITED DISTRIBUTION NOTICE This report will be distributed outside of IBM up to one year after the IBM publication date. Some reports are available at http://domino.watson.ibm.com/library/Cyberdig.nsf/home. Research Almaden • Austin • Beijing • Delhi • Haifa • T.J. Watson • Tokyo • Zurich The Fundamental Limit of Flash Random Write Performance: Understanding, Analysis and Performance Modelling Xiao-Yu Hu Robert Haas IBM Research, Zurich fxhu,[email protected] Abstract 1. Introduction The understanding, analysis and modelling of the fundamen- NAND Flash memory holds the promise of revolutionizing tal limit of the sustained random write performance and en- the memory and storage hierarchy in computer systems. durance of Flash solid state drives (SSDs) are critical for Flash memory has been considered to augment DRAM, to Flash SSD vendors and storage system designers and practi- extend persistent storage such as hard-disk drives (HDDs), tioners. This not only helps design high-performance Flash and to form a new layer filling the gap between traditional SSDs, but also dictates how Flash can be integrated into to- DRAM memory and HDDs. Whether Flash memory is used day’s memory and storage hierarchy. to replace or to complement existing DRAM and HDDs, This paper analyzes the fundamental limit of the sus- design challenges resulting from the unique Flash memory tained random write performance of Flash SSDs. An empir- characteristics have to be addressed. ical model is developed to compute the write amplification The read/write/erase behavior of Flash memory is rad- and performance slowdown factor for the greedy garbage ically different from that of HDD or DRAM owing to collection policy under a pure random write workload. Po- its unique erase-before-write and wear-out characteristics. tential causes of the commonly observed performance slow- Flash memory that contains data must be erased before it down are investigated, and remedies suggested. In particu- can store new data, and it can only endure a limited num- lar, we quantitatively demonstrate the potential for enhanc- ber of erase-program1 cycles, usually between 100,000 for ing the random write performance and endurance by separat- single-level cells (SLC) and 10,000 for multiple-level cells ing long-lived data from short-lived data inside Flash SSDs. (MLC). Flash memory is organized in units of pages and Moreover, our theoretical results suggest a tiered storage blocks. Typically, a Flash page is 4 KiB in size and a Flash system in which cold (i.e., infrequently used) data blocks block has 64 Flash pages (thus 256 KiB). are moved to a hard disk drive (HDD) to improve cost ef- Reads and writes are performed on a page basis, whereas fectiveness and to reduce Flash memory utilization, which erases operate on a block basis. Reading a page from Flash improves garbage collection performance. cells to a data buffer inside a Flash die takes 25 ¹s, writing a page to Flash cells takes about 200 ¹s, and erasing a Flash Categories and Subject Descriptors B.3.3 [Memory struc- block normally takes 2 ms. Although the read and write tures]: Performance analysis and design aids—formal mod- operations take on the order of tens of microseconds, the els, simulation; C.3 [Special-purpose and application-based erase operations take milliseconds. Therefore, using Flash systems]: Real-time and embedded systems; D.4.2 [Storage naively, such as for write-in-place, would not yield a high management]: Garbage collection performance. General Terms Design, Performance, Algorithms To address the erase-before-write characteristics, Flash memory together with a microprocessor (controller), collec- Keywords Solid State Drives (SSDs), Solid State Storage tively called a Flash solid-state drive (SSD), requires a set Systems, Flash Memory, Write Amplification, Garbage Col- of Flash management functions, such as the Flash transla- lection tion layer (FTL), garbage collection, wear levelling and bad- block management (BBM), to perform out-of-place update, analogous to the write process in the log-structured file sys- tems. In particular, random writes in SSDs cause write amplifi- cation in which a single user write can cause more than one actual write, owing to background activities in SSDs. Write [Copyright notice will appear here once ’preprint’ option is removed.] 1 Writing data onto Flash is conventionally called programming. 1 2010/3/25 amplification occurs mainly because SSDs write data in an ² Using the proposed empirical model, the advantage of appending mode, which requires garbage collection similar integrating Flash into a tiered storage system is quan- to a log-structured file system. titatively demonstrated, wherein cold (i.e., infrequently It has been reported [3, 6, 8, 14, 41, 50] that existing Flash used) data blocks are moved to an HDD to improve SSDs exhibit good sequential/random read performance and cost effectiveness and to reduce Flash memory utiliza- sequential write performance, but suffer from poor random tion, which improves garbage collection performance. write performance. Moreover, it is claimed that almost all The concept has recently received much attention, and SSDs slow down with use over time, incurring a significant our work provides scientific evidence in support of the performance degradation. Although it might be tempting to concept. investigate the root cause of the poor random write perfor- mance for a particular Flash SSD, it is of more importance to Methodology: The key obstacle to analyzing the funda- understand whether this common behavior is a fundamental mental limit of random write performance of Flash SSDs is limit or merely an implementation artifact. the lack of a sensible model for hardware/firmware archi- Contributions: In this paper, we analyze the fundamen- tecture as well as Flash management functions. There are a tal limit of the sustained random write performance of Flash variety of Flash SSD designs from various vendors, featur- SSDs. We focus on key contributing factors limiting the ran- ing a broad range of hardware architectures, and each Flash dom write performance, and quantify their impact. We stress SSD vendor keep its core Flash management functions, such practical implications of the analytical results, reflecting on as FTL, garbage collection and wear levelling, proprietary, the causes of and possible remedies for the performance making a generic performance analysis extremely difficult. slowdown widely observed in existing SSDs. We extend our Therefore we take the following methodology: Instead of results to quantitatively evaluate the potential performance focusing on a particular Flash SSD design, we identify a and endurance improvement by separating inactive from ac- common Flash SSD architecture that is sufficiently typical, tive data inside Flash SSDs or by migrating inactive data out and embodies the state-of-the-art of Flash SSD designs, from of Flash SSDs. More specifically, this paper makes the fol- which we built an event-driven, Java-based Flash SSD sim- lowing main contributions: ulator [23]. The simulator has two functional parts: a low- level and a high-level part. The low-level part is devoted to ² An empirical model to analyze the random write per- the emulation of physical Flash channels and the high-level formance as a function of utilization is developed and part is responsible for firmware, such as data structures and evaluated against simulation results. The performance algorithms for managing Flash memory. model accurately approximates the write amplification The low-level part emulates the basic Flash commands, of a given garbage collection strategy and helps deter- such as reading/writing a page and erasing a block, on mul- mine the sustained random write performance and thus tiple parallel Flash channels, each of which has multiple dies the slowdown from the peak random write performance. attached. As the rudimentary read/write/erase behavior of Although the model is limited to the pure random write Flash commands is well defined by Flash memory manu- workload, it is, to our knowledge, the first of its kind to factures, the low-level part turns out to be straightforward model random write performance of Flash SSDs, and its and relatively easy to develop; it captures every phase of relevance/usefulness is demonstrated by using it to quan- Flash commands to a precision level of the clock. In a sister tify the potential of data placement and data migration project, we developed a hardware prototype of Flash con- schemes. troller using the Xilinx FPGA evaluation board ML405, and by a cross-check, found that our simulator faithfully matches ² A widely-known greedy garbage collection model is de- the read/write/erase behavior of Flash commands on the real fined in detail and proved to be the optimal algorithm for Flash memory. the random write workload. It is further shown that no The high-level part is responsible for Flash management static wear levelling is needed for this workload. This is functions, such as FTL, garbage collection, wear levelling the first theoretical work on the analysis of Flash garbage and bad block management. The simulator is made in a collection policies. flexible way (using Java interface facility) such that various ² Using the proposed empirical model and the Flash SSD algorithms can easily be switched on and off for the purpose simulator, the potential for enhancing the random write of testing. The simulator has been used to develop and test performance and endurance by separating long-lived new algorithms for advanced Flash management functions, from short-lived data inside Flash SSDs is investigated as well as to simulate a storage system integrating Flash in a qualitative manner. The idea of separation long-lived memory as cache.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    16 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us