380 likes | 558 Views
Lifetime Management of Flash-Based SSDs Using Recovery-Aware Dynamic Throttling. Sungjin Lee, Taejin Kim, Kyungho Kim, and Jihong Kim Seoul National University, Korea {chamdoo, taejin1999, jihong}@davinci.snu.ac.kr Samsung Electronics, Korea kyungho21.kim@samsung.com. Outline. Introduction
E N D
Lifetime Management of Flash-Based SSDs UsingRecovery-Aware Dynamic Throttling Sungjin Lee, Taejin Kim, Kyungho Kim, and Jihong KimSeoul National University, Korea {chamdoo, taejin1999, jihong}@davinci.snu.ac.kr Samsung Electronics, Korea kyungho21.kim@samsung.com
Outline Introduction Endurance Characteristics of FlashMemory Recovery-Aware Dynamic Throttling Experimental Results Related Work Conclusions
Introduction NAND flash memory has been widely used in mobile embedded systems likemobile phones,MP3 players, andlaptop computers because of its low-power consumption,high mobility, and high performance. the poor write endurance ofNAND flash memory is still regarded as a main barrierfor a wide adoption of flash-based SSDs in the enterprise market. two key problems on the SSDlifetime need to be addressed properly.
Introduction the endurance of flash device is rapidly decreasing: the charge trappingcharacteristic of a floating-gate transistor. the semiconductorprocess is scaled down and with multi-level cell (MLC)technology. the unpredictable lifetime offlash devices: the SSD lifetime is determinedby extra data written by garbage collection andwear-leveling as well as by the number of bytes writtenby applications.
Introduction A basic concept of READY: tothrottle write performance by adding throttling delays towrite requests, so as to guarantee the required SSD lifetime. With dynamic throttling, the IOPS and bandwidthof SSDs is reduced to a certain extent.
Endurance Characteristics of FlashMemory threshold voltage In NAND flash memory, program/erase (P/E) operationsinevitably cause damage to floating-gate transistors,reducing the overall endurance of memory cells.At the device level, memory cells are gradually wornout as charges get trapped in the interface and oxidelayers of a floating-gate transistor during P/E cycles. the cell becomes unreliable when the thresholdvoltage is higher than a certain voltage margin
Endurance Characteristics of FlashMemory threshold voltage
Endurance Characteristics of FlashMemory self-recovery property
Endurance Characteristics of FlashMemory • Besides the length of the idle time, there are other factorsthat affect the cell recovery, such as an external temperatureand a programmed threshold voltage. ignore
Endurance Characteristics of FlashMemory idie time
Recovery-Aware Dynamic Throttling Basic Idea
Recovery-Aware Dynamic Throttling explain Cssd = P/E cycles allowed to each block * SSD capacity Tssd = lifetime Wwork =the number of bytes written to the SSD Staticthrottling guarantees the required lifetime by limiting themaximum bandwidth of the SSD to a certain fixed value, which is denoted by Bstatic. Bstatic= Cssd/Tssd
Recovery-Aware Dynamic Throttling Basic Idea In order to overcome the limitation of the static throttling technique, we propose a recover-aware dynamicthrottling technique, READY. By dynamically throttling write requests accordingto the characteristics of a workload and the remainingSSD lifetime, the proposed READY technique fully utilizes the given endurance of the SSD up to the maximum, while minimizing performance degradation.
Recovery-Aware Dynamic Throttling In designing a dynamic throttling policy, we focus ontwo aspects of the design requirements of SSDs. to determine a throttling delay as low as possible so that Wwork is close to C'ssd at the time of Tssd. to distribute a throttling delay over every write request as evenly as possible. three main functions as shown next
Recovery-Aware Dynamic Throttling Estimation of Future Write Demands In READY, the entire lifetime, Tssd,of the SSD is divided into epochs. At the beginningof each epoch, the write demand predictor estimates thenumber of bytes that is to be written during the epochbased on the number of bytes actually written to theSSD during the latest epoch.
Recovery-Aware Dynamic Throttling Estimation of Future Write Demands
Recovery-Aware Dynamic Throttling Calculation of Throttling Delay
Recovery-Aware Dynamic Throttling Calculation of Throttling Delay
Recovery-Aware Dynamic Throttling Enforcement of Epoch Capacity pessimistic epochcapacity enforcement
Recovery-Aware Dynamic Throttling Enforcement of Epoch Capacity optimistic epochcapacity enforcement
Recovery-Aware Dynamic Throttling Enforcement of Epoch Capacity algorithms Note that c0 = ... = cn−1 = Cr/n asmentioned in Section 3.3. The spare capacity for the0-th epoch is (c1 + ... + cn−1) · 0.1, and thus the totalcapacity that can be written during the 0-th epoch isc0 + (c1 + ... + cn−1) · 0.1.
Recovery-Aware Dynamic Throttling Epoch Length Selection
Recovery-Aware Dynamic Throttling Epoch Length Selection
Recovery-Aware Dynamic Throttling Epoch Length Selection Afterchoosing the new epoch length, READY recalculatesa throttling delay using Eq.(4) if dynamic throttling isnecessary. The new epoch length is determined underthe assumption that there are no throttling delays. Theepoch length, tepoch, is thus increased to tepoch · (wi/ci)to include delays caused by throttling.
Experiments Results Experimental Settings: DiskSim-based SSD simulator The flash memoryused for the evaluations was based on 2-bit MLC NANDflash memory, and each block wascomposed of 64 4 KBpages. The page read time and the page write time were50 μs and 600 μs, respectively, and the block erasuretime was 2 ms. The number of P/E cycles allowed to ablock was initially set to 3K, but it was changed dependingon the length of the idle time based on our recoverymodel. The target lifetime of the SSD was set to 5 years.
Experiments Results A comparison of effective SSD lifetimes forfive traces with different SSD configurations.
Related Work avoiding useless data migration: existing garbagecollection and wear-leveling techniques Data de-duplication : detects duplicatedata blocks that already exist in a storage deviceand then eliminates redundant writes to SSDs for such blocks. Data compression: repeated bit patternswithin a data block, reducingwrites to SSDs.
Related Work Wu et al. presented an enduranceenhancementtechnique that boosts recovery speed by heating a flashchip worn out under high temperature comparing our study considers the endurance improvement of SSDsat the room temperature
Conclusions Our evaluation results showed that the proposedthrottling technique guarantees a lifetime warranty, whileachieving a relatively small reduction in write responsetime and little response time variation over the staticthrottling technique. READY can be improved in several directions. implement READY in a real SSD platform.