Reducing Data Migration Overheads of Flash Wear Leveling in a Progressive Way

As the endurance of flash memory keeps deteriorating, exploiting wear leveling (WL) techniques to improve the lifetime/endurance of flash memory has become a critical issue in the design of flash storage devices. Nevertheless, the deteriorated access performance of high-density flash memory makes the performance overheads introduced by WL non-negligible. In particular, the existing WL designs usually aggressively distribute the erases to all flash blocks evenly in a regular basis. As a result, a lot of non-negligible unnecessary data migrations would be imposed in the early stages of the device lifespan, and would be further exacerbated if a WL design selects improper victim blocks for erases. In contrast to the existing WL approaches, we propose a progressive WL design to perform WL in a progressive way to prevent any block from being worn out prematurely with minimized performance overheads caused by the unnecessary data migration. The experiments were conducted based on representative realistic workloads to evaluate the efficacy of the proposed design. The results reveal that instead of sacrificing the device lifetime, performing WL in such a progressive way can not only minimize the performance overheads but also have potentials to extend the device lifetime.

[1]  Sang Lyul Min,et al.  A space-efficient flash translation layer for CompactFlash systems , 2002, IEEE Trans. Consumer Electron..

[2]  Tei-Wei Kuo,et al.  Joint management of RAM and flash memory with access pattern considerations , 2012, DAC Design Automation Conference 2012.

[3]  Tei-Wei Kuo,et al.  Improving Flash Wear-Leveling by Proactively Moving Static Data , 2010, IEEE Transactions on Computers.

[4]  Sang-Won Lee,et al.  A log buffer-based flash translation layer using fully-associative sector translation , 2007, TECS.

[5]  Tei-Wei Kuo,et al.  An adaptive striping architecture for flash memory storage systems of embedded systems , 2002, Proceedings. Eighth IEEE Real-Time and Embedded Technology and Applications Symposium.

[6]  Tei-Wei Kuo,et al.  Working-set-based address mapping for ultra-large-scaled flash devices , 2012, CODES+ISSS '12.

[7]  Li-Pin Chang,et al.  On efficient wear leveling for large-scale flash-memory storage systems , 2007, SAC '07.

[8]  Dong-Ho Lee,et al.  HFTL: hybrid flash translation layer based on hot data identification for flash memory , 2009, IEEE Transactions on Consumer Electronics.

[9]  Nikolai Joukov,et al.  A nine year study of file system and storage benchmarking , 2008, TOS.

[10]  阿米尔·班 Flash File System , 1994 .

[11]  Youngjae Kim,et al.  DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings , 2009, ASPLOS.

[12]  Sivan Toledo,et al.  Algorithms and data structures for flash memories , 2005, CSUR.

[13]  Mendel Rosenblum,et al.  The design and implementation of a log-structured file system , 1991, SOSP '91.

[14]  Tei-Wei Kuo,et al.  PWL: A progressive wear leveling to minimize data migration overheads for NAND flash devices , 2015, 2015 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[15]  Chundong Wang,et al.  TreeFTL: Efficient RAM management for high performance of NAND flash-based storage systems , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[16]  Mahmut T. Kandemir,et al.  Physically addressed queueing (PAQ): Improving parallelism in solid state disks , 2012, 2012 39th Annual International Symposium on Computer Architecture (ISCA).

[17]  Ruei-Chuan Chang,et al.  Cleaning policies in mobile computers using flash memory , 1999, J. Syst. Softw..

[18]  Rina Panigrahy,et al.  Design Tradeoffs for SSD Performance , 2008, USENIX ATC.

[19]  David Hung-Chang Du,et al.  Rejuvenator: A static wear leveling algorithm for NAND flash memory with minimized overhead , 2011, 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST).

[20]  David Hung-Chang Du,et al.  Hot data identification for flash-based storage systems using multiple bloom filters , 2011, 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST).

[21]  Hong Jiang,et al.  Exploring and Exploiting the Multilevel Parallelism Inside SSDs for Improved Performance and Endurance , 2013, IEEE Transactions on Computers.

[22]  Tei-Wei Kuo,et al.  Efficient identification of hot data for flash memory storage systems , 2006, TOS.