BLAS: Block-Level Adaptive Striping for Solid-State Drives

被引:6
作者
Chang, Da-Wei [1 ]
Chen, Hsin-Hung [1 ]
Yang, Dau-Jieu [1 ]
Chang, Hsung-Pin [2 ]
机构
[1] Natl Cheng Kung Univ, Dept Comp Sci & Informat Engn, Tainan 70101, Taiwan
[2] Natl Chung Hsing Univ, Dept Comp Sci & Engn, Taichung 40227, Taiwan
关键词
Design; Algorithms; Performance; SSD; NAND flash memory; data placement; write buffer; EXPLOITING INTERNAL PARALLELISM; FLASH TRANSLATION LAYER;
D O I
10.1145/2555616
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Increasing the degree of parallelism and reducing the overhead of garbage collection (GC overhead) are the two keys to enhancing the performance of solid-state drives (SSDs). SSDs employmultichannel architectures, and a data placement scheme in an SSD determines how the data are striped to the channels. Without considering the data access pattern, existing fixed and device-level data placement schemes may have either high GC overhead or poor I/ O parallelism, resulting in degraded performance. In this article, an adaptive block-level data placement scheme called BLAS is proposed to maximize the I/ O parallelism while simultaneously minimizing the GC overhead. In contrast to existing device-level schemes, BLAS allows different data placement policies for blocks with different access patterns. Pages in read-intensive blocks are scattered over various channels to maximize the degree of read parallelism, while pages in each of the remaining blocks are attempted to be gathered in the same physical block to minimize the GC overhead. Moreover, BLAS allows the placement policy for a logical block to be changed dynamically according to the access pattern changes of that block. Finally, a parallelism-aware write buffer management approach is adopted in BLAS to maximize the degree of write parallelism. Performance results show that BLAS yields a significant improvement in the SSD response time when compared to existing device-level schemes. In particular, BLAS outperforms device-level page striping and device-level block striping by factors of up to 8.75 and 7.41, respectively. Moreover, BLAS achieves low GC overhead and is effective in adapting to workload changes.
引用
收藏
页数:29
相关论文
共 34 条
  • [1] [Anonymous], 2008, SAMSUNG UNVEILS 2GB
  • [2] [Anonymous], 2011, P ACM S APPL COMP SA
  • [3] [Anonymous], SQLIOSIM
  • [4] [Anonymous], SSD EXT DISKSIM SIM
  • [5] [Anonymous], OP NAND FLASH INT
  • [6] [Anonymous], OLTP I O TRACES
  • [7] [Anonymous], 2011, ACM 11 P INT C SUPER
  • [8] SimpleScalar: An infrastructure for computer system modeling
    Austin, T
    Larson, E
    Ernst, D
    [J]. COMPUTER, 2002, 35 (02) : 59 - +
  • [9] Design and Implementation of an Efficient Wear-Leveling Algorithm for Solid-State-Disk Microcontrollers
    Chang, Li-Pin
    Du, Chun-Da
    [J]. ACM TRANSACTIONS ON DESIGN AUTOMATION OF ELECTRONIC SYSTEMS, 2009, 15 (01)
  • [10] An adaptive striping architecture for flash memory storage systems of embedded systems
    Chang, LP
    Kuo, TW
    [J]. EIGHTH IEEE REAL-TIME AND EMBEDDED TECHNOLOGY AND APPLICATIONS SYMPOSIUM, PROCEEDINGS, 2002, : 187 - 196