05.10.20151/38 Lifetime Management of Flash-Based SSDs Using Recovery-Aware Dynamic Throttling Sungjin Lee, Taejin Kim, Kyungho Kim, and Jihong Kim Seoul.

Post on 30-Dec-2015

214 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

Transcript

23/4/19 1/38

Lifetime Management of Flash-Based SSDs UsingRecovery-Aware Dynamic Throttling

Sungjin Lee, Taejin Kim, Kyungho Kim, and Jihong Kim Seoul National University, Korea{chamdoo, taejin1999, jihong}@davinci.snu.ac.krSamsung Electronics, Koreakyungho21.kim@samsung.com

23/4/19 2/38

Outline

•Introduction •Endurance Characteristics of FlashMemory •Recovery-Aware Dynamic Throttling•Experimental Results•Related Work•Conclusions

23/4/19 3/38

Introduction

• NAND flash memory has been widely used in mobile embedded systems likemobile phones,MP3 players,

and laptop computers because of its low-power consumption,high mobility, and high performance.

• the poor write endurance of NAND flash memory is still regarded as a main barrier for a wide adoption of flash-based SSDs in the enterprise market.

• two key problems on the SSD lifetime need to be addressed properly.

23/4/19 4/38

Introduction • the endurance of flash device is rapidly decreasing : the charge trapping characteristic of a floating-gate transistor. the semiconductor process is scaled down and with multi-level cell (MLC) technology.•the unpredictable lifetime of flash devices: the SSD lifetime is determined by extra data written by garbage collection and wear-leveling as well as by the number of bytes written by applications.

23/4/19 5/38

Introduction

•A basic concept of READY: to throttle write performance by adding throttling delays to write requests, so as to guarantee the required SSD lifetime.With dynamic throttling, the IOPS and bandwidth of SSDs is reduced to a certain extent.

23/4/19 6/38

Endurance Characteristics of FlashMemory

• In NAND flash memory, program/erase (P/E) operations inevitably cause damage to floating-gate transistors,reducing the overall endurance of memory cells.At the device level, memory cells are gradually worn out as charges get trapped in the interface and oxide layers of a floating-gate transistor during P/E cycles.

• the cell becomes unreliable when the threshold voltage is higher than a certain voltage margin

23/4/19 7/38

Endurance Characteristics of FlashMemory

23/4/19 8/38

Endurance Characteristics of FlashMemory

23/4/19 9/38

Besides the length of the idle time, there are other factors that affect the cell recovery, such as an external temperature and a programmed threshold voltage.

Endurance Characteristics of FlashMemory

23/4/19 10/38

Endurance Characteristics of FlashMemory

23/4/19 11/38

Recovery-Aware Dynamic Throttling

23/4/19 12/38

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

Static throttling guarantees the required lifetime by limiting the maximum bandwidth of the SSD to a certain fixed value,which is denoted by Bstatic.

Bstatic = Cssd/Tssd

23/4/19 13/38

Recovery-Aware Dynamic Throttling

In order to overcome the limitation of the static throttlingtechnique, we propose a recover-aware dynamic throttling technique, READY. By dynamically throttling write requests according to the characteristics of a workload and the remaining SSD lifetime, the proposed READY techniquefully utilizes the given endurance of the SSD up to themaximum, while minimizing performance degradation.

23/4/19 14/38

Recovery-Aware Dynamic ThrottlingIn designing a dynamic throttling policy, we focus on

two aspects of the design requirements of SSDs.

to distribute a throttling delay over every writerequest as evenly as possible.

to determine a throttling delay as low as possibleso that Wwork is close to C'ssd at the time of Tssd.

three main functions as shown next

23/4/19 15/38

Recovery-Aware Dynamic Throttling

23/4/19 16/38

Recovery-Aware Dynamic ThrottlingEstimation of Future Write Demands

In READY, the entire lifetime, Tssd, of the SSD is divided into epochs. At the beginning of each epoch, the write demand predictor estimates the number of bytes that is to be written during the epoch based on the number of bytes actually written to the SSD during the latest epoch.

23/4/19 17/38

Recovery-Aware Dynamic ThrottlingEstimation of Future Write Demands

23/4/19 18/38

Recovery-Aware Dynamic ThrottlingCalculation of Throttling Delay

23/4/19 19/38

Recovery-Aware Dynamic ThrottlingCalculation of Throttling Delay

23/4/19 20/38

Recovery-Aware Dynamic Throttling

Enforcement of Epoch Capacity

23/4/19 21/38

Recovery-Aware Dynamic Throttling

Enforcement of Epoch Capacity

23/4/19 22/38

Recovery-Aware Dynamic Throttling

algorithms

Note that c0 = ... = cn−1 = Cr/n as mentioned in Section 3.3. The spare capacity for the 0-th epoch is (c1 + ... + cn−1) · 0.1,and thus the total capacity that can be written during the 0-thepoch is c0 + (c1 + ... + cn−1) · 0.1.

Enforcement of Epoch Capacity

23/4/19 23/38

Recovery-Aware Dynamic Throttling

Epoch Length Selection

23/4/19 24/38

Recovery-Aware Dynamic ThrottlingEpoch Length Selection

23/4/19 25/38

Recovery-Aware Dynamic Throttling

Epoch Length SelectionAfter choosing the new epoch length, READY recalculates a throttling delay using Eq.(4) if dynamic throttling is necessary. The new epoch length is determined under the assumption that there are no throttling delays. The epoch length, tepoch, is thus increased to tepoch · (wi/ci) to include delays caused by throttling.

23/4/19 26/38

Experiments ResultsExperimental Settings:

DiskSim-based SSD simulatorThe flash memory used for the evaluations was based on 2-bit MLC NAND flash memory, and each block was composed of 64 4 KB pages. The page read time and the page write time were 50 μs and 600 μs, respectively, and the block erasure time was 2 ms. The number of P/E cycles allowed to a block was initially set to 3K, but it was changed depending on the length of the idle time based on our recovery model. The target lifetime of the SSD was set to 5 years.

23/4/19 27/38

Experiments Results

23/4/19 28/38

Experiments Results

A comparison of effective SSD lifetimes for five traces with different SSD configurations.

23/4/19 29/38

Experiments Results

23/4/19 30/38

Experiments Results

23/4/19 31/38

Experiments Results

23/4/19 32/38

Experiments Results

23/4/19 33/38

Experiments Results

23/4/19 34/38

Experiments Results

23/4/19 35/38

Related Work

Data de-duplication :existing garbage collection and wear-leveling techniques

avoiding useless data migration:

detects duplicate data blocks that already exist in a storage device and then eliminates redundant writes to SSDs for suchblocks.

Data compression:repeated bit patterns within a data block, reducingwrites to SSDs.

23/4/19 36/38

Related Work

Wu et al. presented an endurance enhancement technique that boosts recov

ery speed by heating a flashchip worn out under high temperature

our study considers the endurance improvement of SSDs at the room te

mperature

23/4/19 37/38

Conclusions

READY can be improved in several directions.implement READY in a real SSD platform.

Our evaluation results showed that the proposed throttling technique guarantees a lifetime warranty, while achieving a relatively small reduction in write response time and little response time variation over the static throttling technique.

23/4/19 38/38

top related