TreeFTL: Efficient RAM management for high performance of NAND flash-based storage systems

NAND flash memory is widely used for secondary storage today. The flash translation layer (FTL) is the embedded software that is responsible for managing and operating in flash storage system. One important module of the FTL performs RAM management. It is well-known to have a significant impact on flash storage system's performance. This paper proposes an efficient RAM management scheme called TreeFTL. As the name suggests, TreeFTL organizes address translation pages and data pages in RAM in a tree structure, through which it dynamically adapts to workloads by adjusting the partitions for address mapping and data buffering. TreeFTL also employs a lightweight mechanism to implement the least recently used (LRU) algorithm for RAM cache evictions. Experiments show that compared to the two latest schemes for RAM management in flash storage system, TreeFTL can reduce service time by 46.6% and 49.0% on average, respectively, with a 64MB RAM cache.

[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]  Hyojun Kim,et al.  BPLRU: A Buffer Management Scheme for Improving Random Writes in Flash Storage , 2008, FAST.

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

[5]  Sooyong Kang,et al.  Performance Trade-Offs in Using NVRAM Write Buffer for Flash Memory-Based Storage Devices , 2009, IEEE Transactions on Computers.

[6]  Zili Shao,et al.  Demand-based block-level address mapping in large-scale NAND flash storage systems , 2010, 2010 IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[7]  Jin-Soo Kim,et al.  An adaptive partitioning scheme for DRAM-based cache in Solid State Drives , 2010, 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST).

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

[9]  Antony I. T. Rowstron,et al.  Write off-loading: Practical power management for enterprise storage , 2008, TOS.

[10]  Li-Pin Chang,et al.  Plugging versus logging: A new approach to write buffer management for solid-state disks , 2011, 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC).

[11]  Zili Shao,et al.  A Two-Level Caching Mechanism for Demand-Based Page-Level Address Mapping in NAND Flash Memory Storage Systems , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[12]  Zili Shao,et al.  A block-level flash memory management scheme for reducing write activities in PCM-based embedded systems , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).