skip to main content
research-article

Reducing asynchrony in channel garbage-collection for improving internal parallelism of multichannel solid-state disks

Published:27 January 2014Publication History
Skip Abstract Section

Abstract

Solid-state disks use multichannel architectures to boost their data transfer rates. Because realistic disk workloads have numerous small write requests, modern flash-storage devices adopt a write buffer and a set of independent channels for better parallelism in serving small write requests. When a channel is undergoing garbage collection, it stops responding to inbound write traffic and accumulates page data in the write buffer. This results in contention for buffer space and creates idle periods in channels. This study presents a channel-management strategy, called garbage-collection advancing, which allows early start of garbage collection in channels for increasing the overlap among channel activities of garbage collection and restoring the balance of buffer-space usage among channels. This study further introduces cycle filling, which is a version of garbage-collection advancing tailored for the operation model of flash planes. Experimental results show that the proposed methods greatly outperformed existing designs of multichannel systems in terms of response and throughput. We also successfully implemented the proposed methods in a real solid-state disk and proved their feasibility in real hardware.

References

  1. N. Agrawal, V. Prabhakaran, T. Wobber, J. D. Davis, M. Manasse, and R. Panigrahy. 2008. Design tradeoffs for SSD performance. In Proceedings of the USENIX Annual Technical Conference on Annual Technical Conference (ATC'08). USENIX Association, 57--70. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. L. Chang and Y. 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). IEEE, 23--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. L.-P. Chang. 2010. A hybrid approach to nand-flash-based solid-state disks. IEEE Trans. Comput. 59, 10, 1337--1349. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. L.-P. Chang, and T.-W. Kuo. 2002. An adaptive striping architecture for flash memory storage systems of embedded systems. In Proceedings of the 8th IEEE Real-Time and Embedded Technology and Applications Symposium. 187--196. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. L.-P. Chang, T.-W. Kuo, and S.-W. Lo. 2004. Real-time garbage collection for flash-memory storage systems of real-time embedded systems. ACM Trans. Embed. Comput. Syst. 3, 4, 837--863. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. H. Cho, D. Shin, and Y. I. Eom. 2009. Kast: K-associative sector translation for NAND flash memory in real-time systems. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE'09). European Design and Automation Association, 507--512. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. C. Dirik and B. 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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. A. Gupta, Y. Kim, and B. 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, 229--240. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. J.-U. Kang, J.-S. Kim, C. Park, H. Park, and J. Lee. 2007. A multi-channel architecture for high-performance NAND flash-based storage system. J. Syst. Archit. 53, 9, 644--658. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. S. Kang, S. Park, H. Jung, H. Shim, and J. Cha. 2009. Performance trade-offs in using NVRAM write buffer for flash memory-based storage devices. IEEE Trans. Comput. 58, 6, 744--758. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. H. Kim and S. 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, 1--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. S.-W. Lee, D.-J. Park, T.-S. Chung, D.-H. Lee, S. Park, and H.-J. Song. 2007. A log buffer-based flash translation layer using fully-associative sector translation. Trans. Embed. Comput. Syst. 6, 3, 18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Micron Technology. 2009. MT29F512G08 NAND Flash Memory Data Sheet. Micron Technology, Inc.Google ScholarGoogle Scholar
  14. E. H. Nam, B. Kim, H. Eom, and S. L. Min. 2011. Ozone (o3): An out-of-order flash memory controller architecture. IEEE Trans. Comput. 60, 5, 653--666. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Open NAND Flash Interface. 2011. ONFi 3.0 Specification. Open NAND Flash Interface.Google ScholarGoogle Scholar
  16. Open Source Development Lab. 2003. Iometer. http://http://www.iometer.org/.Google ScholarGoogle Scholar
  17. S. Park, Y. Park, G. Shim, and K. Park. 2011. Cave: Channel-aware buffer management scheme for solid state disk. In Proceedings of the ACM Symposium on Applied Computing. ACM, 346--353. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. S.-H. Park, J.-W. Park, S.-D. Kim, and C. C. Weems. 2012. A pattern adaptive NAND flash memory storage structure. IEEE Trans. Comput. 61, 1, 134--138. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Z. Qin, Y. Wang, D. Liu, and Z. Shao 2012. Real-time flash translation layer for NAND flash memory storage systems. In Proceedings of the Real-Time and Embedded Technology and Applications Symposium. IEEE, 35--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Samsung. 2008. K9MDG08U5M 4G * 8 Bit MLC NAND Flash Memory Data Sheet. Samsung Electronics Company.Google ScholarGoogle Scholar
  21. Y. J. Seong, E. H. Nam, J. H. Yoon, H. Kim, J.-Y. Choi, S. Lee, Y. H. Bae, J. Lee, Y. Cho, and S. L. Min. 2010. Hydra: A block-mapped parallel flash memory solid-state disk architecture. IEEE Trans. Comput. 59, 905--921. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Reducing asynchrony in channel garbage-collection for improving internal parallelism of multichannel solid-state disks

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader
            About Cookies On This Site

            We use cookies to ensure that we give you the best experience on our website.

            Learn more

            Got it!