Nothing Special   »   [go: up one dir, main page]

skip to main content
research-article

Exploiting Page Correlations for Write Buffering in Page-Mapping Multichannel SSDs

Published: 13 January 2016 Publication History

Abstract

Advanced solid-state disks (SSDs) have been equipped with page-mapping flash translation layers and multichannel architectures. The SSDs employ a RAM-based write buffer, which delays write requests for reducing write traffic, reorders requests for mitigating garbage-collection overhead, and produces parallel page writes for improving channel time utilization. This work presents a novel write buffer algorithm that exploits temporal and spatial correlations among buffer pages. The write-buffer groups temporally or spatially correlate buffer pages and then write the grouped buffer pages to the same flash block. In this way, when the correlated page data are updated in the future, flash blocks will receive bulk page invalidations and become good candidates for garbage collection. With multichannel architectures, the write buffer adaptively disperses read-most sequential data over channels for high page-level parallelism of sequential reads, while clustering write-most sequential data in the same channel for a reduced cost of garbage collection. We evaluated the proposed method and previously proposed buffer algorithms. Our method was shown to outperform the existing methods by up to 134%. We also implemented our buffer design on the OpenSSD platform; the time and space overheads of our design were reported to be very low.

References

[1]
Nitin Agrawal, Vijayan Prabhakaran, Ted Wobber, John D. Davis, Mark Manasse, and Rina Panigrahy. 2008. Design tradeoffs for SSD performance. In Proceedings of the USENIX 2008 Annual Technical Conference on Annual Technical Conference (ATC'08). USENIX Association, 57--70.
[2]
Da-Wei Chang, Hsin-Hung Chen, Dau-Jieu Yang, and Hsung-Pin Chang. 2014. BLAS: Block-level adaptive striping for solid-state drives. ACM Transactions on Design Automation of Electronic Systems 19, 2, 21.
[3]
Li-Pin Chang. 2010. A hybrid approach to NAND-flash-based solid-state disks. IEEE Transactions on Computers 59, 10, 1337--1349.
[4]
Li-Pin Chang and You-Chiuan Su. 2011. Plugging versus logging: A new approach to write buffer management for solid-state disks. In Proceedings of the 48th ACM/EDAC/IEEE Design Automation Conference (DAC). 23--28.
[5]
Yuan-Hao Chang, Wei-Lun Lu, Po-Chun Huang, Lue-Jane Lee, and Tei-Wei Kuo. 2010. An efficient FTL design for multi-chipped solid-state drives. In Proceedings of the 2010 IEEE 16th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'10). IEEE, 237--246.
[6]
Feng Chen, Rubao Lee, and Xiaodong Zhang. 2011. Essential roles of exploiting internal parallelism of flash memory based solid state drives in high-speed data processing. In Proceedings of the 2011 IEEE 17th International Symposium on High Performance Computer Architecture (HPCA'11). IEEE, 266--277.
[7]
R. Chen, Z. Qin, Y. Wang, D. Liu, Z. Shao, and Y. Guan. 2015. On-demand block-level address mapping in large-scale NAND flash storage systems. IEEE Transactions on Computers 64, 6, 1729--1741.
[8]
Cagdas Dirik and Bruce Jacob. 2009. The performance of PC solid-state disks (SSDs) as a function of bandwidth, concurrency, device architecture, and system organization. In Proceedings of the 36th Annual International Symposium on Computer Architecture (ISCA'09). ACM, New York, NY, 279--289.
[9]
Aayush Gupta, Youngjae Kim, and Bhuvan Urgaonkar. 2009. DFTL: A flash translation layer employing demand-based selective caching of page-level address mappings. In Proceeding of the 14th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS'09). ACM, New York, NY, 229--240.
[10]
J. Hsieh, H. Lin, and D. Yang. 2013. Multi-channel architecture-based FTL for reliable and high-performance SSD. IEEE Transactions on Computers PP, 99, 1--1.
[11]
Yang Hu, Hong Jiang, Dan Feng, Lei Tian, Hao Luo, and Chao Ren. 2013. Exploring and exploiting the multilevel parallelism inside SSDs for improved performance and endurance. IEEE Transactions on Computers 62, 6, 1141--1155.
[12]
Sheng-Min Huang and Li-Pin Chang. 2014. A locality-preserving write buffer design for page-mapping multichannel SSDs. 2014 IEEE Intl Conf on High Performance Computing and Communications, 2014 IEEE 6th Intl Symp on Cyberspace Safety and Security, 2014 IEEE 11th Intl Conf on Embedded Software and Syst (HPCC,CSS,ICESS). 713--720.
[13]
Indilinx, Inc. 2011. The OpenSSD Project. Retrieved December 21, 2015 from http://www.openssd-project.org/.
[14]
Heeseung Jo, Jeong-Uk Kang, Seon-Yeong Park, Jin-Soo Kim, and Joonwon Lee. 2006. FAB: Flash-aware buffer management policy for portable media players. IEEE Transactions on Consumer Electronics 52, 2, 485--493.
[15]
Sooyong Kang, Sungmin Park, Hoyoung Jung, Hyoki Shim, and Jaehyuk Cha. 2009. Performance trade-offs in using NVRAM write buffer for flash memory-based storage devices. IEEE Transactions on Computers 58, 6, 744--758.
[16]
Dongwook Kim and Sooyong Kang. 2013. Partial page buffering for consumer devices with flash storage. In Proceedings of the Third International Conference on Consumer Electronics. IEEE, 177--180.
[17]
Hyojun Kim and Seongjun Ahn. 2008. BPLRU: A buffer management scheme for improving random writes in flash storage. In Proceedings of the 6th USENIX Conference on File and Storage Technologies (FAST'08). USENIX Association, Berkeley, CA, 1--14.
[18]
Sungjin Lee, Dongkun Shin, Young-Jin Kim, and Jihong Kim. 2008. LAST: Locality-aware sector translation for NAND flash memory-based storage systems. SIGOPS Operating Systems Review 42, 6, 36--42.
[19]
Sang-Won Lee, Dong-Joo Park, Tae-Sun Chung, Dong-Ho Lee, Sangwon Park, and Ha-Joo Song. 2007. A Log buffer-based flash translation layer using fully-associative sector translation. Transactions on Embedded Computing Systems 6, 3, 18.
[20]
Wen-Huei Lin and Li-Pin Chang. 2012. Dual greedy: Adaptive garbage collection for page-mapping solid-state disks. In Proceedings of the Design, Automation Test in Europe Conference Exhibition (DATE'12). 117--122.
[21]
Duo Liu, Tianzheng Wang, Yi Wang, Zhiwei Qin, and Zili Shao. 2011. PCM-FTL: A write-activity-aware NAND flash memory management scheme for PCM-based embedded systems. In Proceedings of the 2011 IEEE 32nd Real-Time Systems Symposium (RTSS'11). IEEE, 357--366.
[22]
Duo Liu, Yi Wang, Zhiwei Qin, Zili Shao, and Yong Guan. 2012. A space reuse strategy for flash translation layers in SLC NAND flash memory storage systems. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 20, 6, 1094--1107.
[23]
Sang-Hoon Park, Seung-Hwan Ha, Kwanhu Bang, and Eui-Young Chung. 2009. Design and analysis of flash translation layers for multi-channel NAND flash-based storage devices. IEEE Transactions on Consumer Electronics 55, 3, 1392--1400.
[24]
Seung-Ho Park, Jung-Wook Park, Shin-Dug Kim, and Charles C Weems. 2012. A pattern adaptive NAND flash memory storage structure. IEEE Transactions on Computers 61, 1, 134--138.
[25]
Sung Kyu Park, Youngwoo Park, Gyudong Shim, and Kyu Ho Park. 2011. CAVE: Channel-aware buffer management scheme for solid state disk. In Proceedings of the 2011 ACM Symposium on Applied Computing (SAC'11). ACM, New York, NY, 346--353.
[26]
Erik Riedel, Catherine van Ingen, and Jim Gray. 1998. Sequential I/O on Windows NT 4.0--achieving top performance. In Proceedings of the 2nd USENIX Windows NT Symposium. 3--5.
[27]
Samsung Electronics Company. 2009. K9GBG08U0A 32Gb A-die MLC NAND Flash Data Sheet. Samsung Electronics Company.
[28]
Dongyoung Seo and Dongkun Shin. 2008. Recently-evicted-first buffer replacement policy for flash storage devices. IEEE Transactions on Consumer Electronics 54, 3, 1228--1235.
[29]
Jinho Seol, Hyotaek Shim, Jaegeuk Kim, and Seungryoul Maeng. 2009. A buffer replacement algorithm exploiting multi-chip parallelism in solid state disks. In Proceedings of the 2009 International Conference on Compilers, Architecture, and Synthesis for Embedded Systems. ACM, New York, NY, 137--146.
[30]
Yoon Jae Seong, Eyee Hyun Nam, Jin Hyuk Yoon, Hongseok Kim, Jin-Yong Choi, Sookwan Lee, Young Hyun Bae, Jaejin Lee, Yookun Cho, and Sang Lyul Min. 2010. Hydra: A block-mapped parallel flash memory solid-state disk architecture. IEEE Transactions on Computers 59, 905--921.
[31]
Liang Shi, Jianhua Li, C. J. Xue, Chengmo Yang, and Xuehai Zhou. 2011. ExLRU: A unified write buffer cache management for flash memory. In Proceedings of the International Conference on Embedded Software (EMSOFT'11). 339--348.
[32]
Gyudong Shim, Youngwoo Park, and Kyu Ho Park. 2011. A hybrid flash translation layer with adaptive merge for SSDs. ACM Transactions on Storage 6, 4, Article 15, 27 pages.
[33]
Tianzheng Wang, Duo Liu, Yi Wang, and Zili Shao. 2013. FTL 2: A hybrid flash translation layer with logging for write reduction in flash memory. In ACM SIGPLAN Notices, Vol. 48. ACM, New York, NY, 91--100.
[34]
Qingsong Wei, Cheng Chen, and Jun Yang. 2014. CBM: A cooperative buffer management for SSD. In Proceedings of the 2014 30th Symposium on Mass Storage Systems and Technologies (MSST'14). 1--12.

Cited By

View all
  • (2023)Adaptive Management With Request Granularity for DRAM Cache Inside nand-Based SSDsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.322929342:8(2475-2487)Online publication date: 1-Aug-2023
  • (2023)Design and simulation of precision marketing recommendation system based on the NSSVD++ algorithmNeural Computing and Applications10.1007/s00521-023-08302-9Online publication date: 8-Feb-2023
  • (2022)SSD internal cache management policiesJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2021.102334122:COnline publication date: 1-Jan-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 15, Issue 1
February 2016
530 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/2872313
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 13 January 2016
Accepted: 01 August 2015
Revised: 01 June 2015
Received: 01 February 2015
Published in TECS Volume 15, Issue 1

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Solid-state disks
  2. flash memory
  3. multichannel
  4. write buffering

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • National Science Council, Taiwan, ROC

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)23
  • Downloads (Last 6 weeks)2
Reflects downloads up to 19 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Adaptive Management With Request Granularity for DRAM Cache Inside nand-Based SSDsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.322929342:8(2475-2487)Online publication date: 1-Aug-2023
  • (2023)Design and simulation of precision marketing recommendation system based on the NSSVD++ algorithmNeural Computing and Applications10.1007/s00521-023-08302-9Online publication date: 8-Feb-2023
  • (2022)SSD internal cache management policiesJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2021.102334122:COnline publication date: 1-Jan-2022
  • (2020)Current-Aware Flash Scheduling for Current Capping in Solid State DisksIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2018.288704639:2(321-334)Online publication date: Feb-2020
  • (2020)Command queue-aware host I/O stack for mobile flash storageJournal of Systems Architecture10.1016/j.sysarc.2020.101758109(101758)Online publication date: Oct-2020
  • (2019)Alleviating Hot Data Write Back Effect for Shingled Magnetic Recording Storage SystemsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2018.287819038:12(2243-2254)Online publication date: 1-Dec-2019
  • (2019)Reducing Flash Memory Write Traffic by Exploiting a Few MBs of Capacitor-Powered Write Buffer Inside Solid-State Drives (SSDs)IEEE Transactions on Computers10.1109/TC.2018.287168368:3(426-439)Online publication date: 1-Mar-2019
  • (2019)Pattern-based Write Scheduling and Read Balance-oriented Wear-Leveling for Solid State Drivers2019 35th Symposium on Mass Storage Systems and Technologies (MSST)10.1109/MSST.2019.00-10(126-133)Online publication date: May-2019
  • (2019)Frequent Pattern-Based Mapping at Flash Translation Layer of Solid-State DrivesIEEE Access10.1109/ACCESS.2019.29290567(95233-95239)Online publication date: 2019
  • (2018)RFLUSHProceedings of the 16th USENIX Conference on File and Storage Technologies10.5555/3189759.3189778(201-209)Online publication date: 12-Feb-2018
  • Show More Cited By

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media