skip to main content
research-article

Z-MAP: A Zone-Based Flash Translation Layer with Workload Classification for Solid-State Drive

Published:24 February 2015Publication History
Skip Abstract Section

Abstract

Existing space management and address mapping schemes for flash-based Solid-State-Drive (SSD) operate either at page or block granularity, with inevitable limitations in terms of memory requirement, performance, garbage collection, and scalability. To overcome these limitations, we proposed a novel space management and address mapping scheme for flash referred to as Z-MAP, which manages flash space at granularity of Zone. Each Zone consists of multiple numbers of flash blocks. Leveraging workload classification, Z-MAP explores Page-mapping Zone (Page Zone) to store random data and handle a large number of partial updates, and Block-mapping Zone (Block Zone) to store sequential data and lower the overall mapping table. Zones are dynamically allocated and a mapping scheme for a Zone is determined only when it is allocated. Z-MAP uses a small part of Flash memory or phase change memory as a streaming Buffer Zone to log data sequentially and migrate data into Page Zone or Block Zone based on workload classification. A two-level address mapping is designed to reduce the overall mapping table and address translation latency. Z-MAP classifies data before it is permanently stored into Flash memory so that different workloads can be isolated and garbage collection overhead can be minimized.

Z-MAP has been extensively evaluated by trace-driven simulation and a prototype implementation on OpenSSD. Our benchmark results conclusively demonstrate that Z-MAP can achieve up to 76% performance improvement, 81% mapping table reduction, and 88% garbage collection overhead reduction compared to existing Flash Translation Layer (FTL) schemes.

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 (ATC’08). 57--70. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. A. Badam and V. S. Pai. 2011. SSDAlloc: Hybrid SSD/RAM memory management made easy. In Proceedings of the 10th USENIX Symposium on Network Systems Design and Implementation (NSDI’11). Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. L. Benini, A. Bogliolo, and G. D. Micheli. 2000. A survey of design techniques for system-level dynamic power management. IEEE Trans. VLSI Syst. 8, 3 (June 2000), 299--316. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. F. Chen, D. A. Koufaty, and X. D. Zhang. 2009. Understanding intrinsic characteristics and system implications of flash memory based solid state drives. In Proceedings of the 11th International Joint Conference on Measurement and Modeling of Computer Systems (SIGMETRICS’09). 181--192. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. F. Chen, T. Luo, and X. Zhang. 2011. CAFTL: A content-aware flash translation layer enhancing the lifespan of flash memory based solid state drives. In Proceedings of the 9th USENIX Conference on File and Storage Technologies (FAST’11). 77--90. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. R. Cheveresan, M. Ramsay, C. Feucht, and I. Sharapov. 2007. Characteristics of workloads used in high performance and technical computing. In Proceedings of the 20th Annual International Conference on Supercomputing (ICS’07). 73--82. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. H. J. Choi, S.-H. Lim, and K. H. Park. 2009. JFTL: A flash translation layer based on a journal remapping for flash memory. ACM Trans. Storage 4, 4 (Jan. 2009), Article 14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. L. M. Grupp, J. D. Davis, and S. Swanson. 2012. The bleak future of NAND flash memory. In Proceedings of the 10th USENIX Conference on File and Storage Technologies (FAST’12). Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. A. Gupta, Y. Kim, and B. Urgaonkar. 2009. DFTL: A flash translation layer employing demand-based selective caching of page-level address mappings. In Proceedings of the 14th International Conference on. Architectural Support for Programming Languages and Operating Systems (ASPLOS’09). 229--240. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. A. Gupta, R. Pisolkar, B. Urgaonkar, and A. Sivasubramaniam. 2011. Leveraging value locality in optimizing NAND flash-based SSDs. In Proceedings of the 9th USENIX Conference on File and Storage Technologies (FAST’11). USENIX. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. D. Hildebrand, L. Ward, and P. Honeyman. 2006. Large files, small writes, and pNFS. In Proceedings of the 20th Annual International Conference on Supercomputing (ICS’06). 116--124. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Y. Hu, H. Jiang, D. Feng, L. Tian, S. Zhang, J. Liu, W. Tong, Y. Qin, and L. Wang. 2010. Achieving page-mapping FTL performance at block-mapping FTL cost by hiding address translation. In Proceedings of the 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST’10). Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Y. Hu, H. Jiang, D. Feng, L. Tian, H. Luo, and S. Zhang. 2011. Performance impact and interplay of SSD parallelism through advanced commands, allocation strategy and data granularity. In Proceedings of the 20th Annual International Conference on Supercomputing (ICS’11). 96--107. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. S. Jiang, L. Zhang, X. Yuan, H. Hu, and Y. Chen. 2011. S-FTL: An efficient address translation for flash memory by exploiting spatial locality. In Proceedings of the 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST’11). 1--12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. J.-U. Kang, H. Jo, J.-S. Kim, and J. Lee. 2006. A superblock-based flash translation layer for NAND flash memory. In Proceedings of the 6th ACM & IEEE International Conference on Embedded Software (EMSOFT’’06). 161--170. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 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). 239--252. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. J. Kim, J. M. Kim, S. H. Noh, S. L. Min, and Y. Cho. 2002. A space-efficient flash translation layer for compact flash systems. IEEE Trans. Consum. Electron. 48, 2, 366--375. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. H. Kwon, E. Kim, J. Choi, D. Lee, and S. H. Noh. 2010. Janus-FTL: Finding the optimal point on the spectrum between page and block mapping schemes. In Proceedings of the 10th International Conference on Embedded Software (EMSOFT’10). 169--178. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. 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. ACM Trans. Embedded Comput. Syst. 6, 3 (July 2007), Article 18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. S. Lee, D. Shin, Y.-J. Kim, and J. Kim. 2008. Last: Locality-aware sector translation for nand flash memory-based storage systems. SIGOPS Oper. Syst. Rev. 42, 6 (Oct. 2008), 36--42. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. J. Lee, Y. Oh, H. Kwon, J. Choi, D. Lee, and S. H. Noh. 2013. TinyFTL: An FTL architecture for flash memory cards with scarce resources. In Proceedings of the 4th Asia-Pacific Workshop on Systems (APSys’13). Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. S. P. Lim, S. W. Lee, and L. B. Moon. 2010. FASTer FTL for enterprise-class flash memory SSDs. In Proceedings of the 2010 International Workshop on Storage Network Architecture and Parallel I/Os (SNAPI’10). Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. R. Liu, C. Yang, and W. Wu. 2012. Optimizing NAND flash-based SSDs via retention relaxation. In Proceedings of the 10th USENIX Conference on File and Storage Technologies (FAST’12). Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. C. Mina, K. Kimb, H. Choc, S. Leed, and Y. I. Eom. 2012. SFS: Random write considered harmful in solid state drives. In Proceedings of the 10th USENIX Conference on File and Storage Technologies (FAST’12). Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Y. Pan, G. Dong, and T. Zhang. 2011. Exploiting memory device wear-out dynamics to improve NAND flash memory system performance. In Proceedings of the 9th USENIX Conference on File and Storage Technologies (FAST’11). 245--258. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. D. Park, B. Debnath, and D. Du. 2009. CFTL: A convertible flash translation layer with consideration of data access patterns. Technical Report TR 09-023, University of Minnesota.Google ScholarGoogle Scholar
  27. A. Rajimwale, V. Prabhakaran, and J. D. Davis. 2009. Block management in solid-state devices. In Proceedings of the USENIX Annual Technical Conference (ATC’09). Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. R. Ramakrishnan and J. Gehrke. 2007. Database Management Systems (3rd ed.). McGraw-Hill, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. J. Ren and Q. Yang. 2011. I-CASH: Intelligently coupled array of SSD and HDD. In Proceedings of the 17th IEEE International Symposium on High Performance Computer Architecture (HPCA’11). 278--289. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. SNIA. 2011. Block IO Traces. Retrieved from http://iotta.snia.org/tracetypes/3.Google ScholarGoogle Scholar
  31. A. Sweeney, D. Doucette, W. Hu, C. Anderson, M. Nishimoto, and G. Peck. 1996. Scalability in the XFS file system. In Proceedings of the USENIX Annual Technical Conference (ATC’96). Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. OpenSSD. 2014. The OpenSSD Project. Retrieved from http://www.openssd-project.org/wiki/The_OpenSSD_Project.Google ScholarGoogle Scholar
  33. Q. S. Wei, B. Z. Gong, P. Suraj, V. Bharadwaj, L. F. Zeng, and K. Okada. 2011. WAFTL: A workload adaptive flash translation layer with data partition. In Proceedings of the 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies (MSST’11). Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. G. Wu and X. He. 2011. Reducing SSD read latency via NAND flash program and erase suspension. In Proceedings of the 9th USENIX Conference on File and Storage Technologies (FAST’11). Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Z-MAP: A Zone-Based Flash Translation Layer with Workload Classification for Solid-State Drive

    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!