skip to main content
research-article
Public Access

Exploiting Data Longevity for Enhancing the Lifetime of Flash-based Storage Class Memory

Authors Info & Claims
Published:13 June 2017Publication History
Skip Abstract Section

Abstract

Storage-class memory (SCM) combines the benefits of a solid-state memory, such as high-performance and robustness, with the archival capabilities and low cost of conventional hard-disk magnetic storage. Among candidate solid-state nonvolatile memory technologies that could potentially be used to construct SCM, flash memory is a well-established technology and have been widely used in commercially available SCM incarnations. Flash-based SCM enables much better tradeoffs between performance, space and power than disk-based systems. However, write endurance is a significant challenge for a flash-based SCM (each act of writing a bit may slightly damage a cell, so one flash cell can be written 10^4-10^5 times, depending on the flash technology, before it becomes unusable). This is a well-documented problem and has received a lot of attention by manufactures that are using some combination of write reduction and wear-leveling techniques for achieving longer lifetime. In an effort to improve flash lifetime, first, by quantifying data longevity in an SCM, we show that a majority of the data stored in a solid-state SCM do not require long retention times provided by flash memory (i.e., up to 10 years in modern devices); second, by exploiting retention time relaxation, we propose a novel mechanism, called Dense-SLC (D-SLC), which enables us perform multiple writes into a cell during each erase cycle for lifetime extension; and finally, we discuss the required changes in the flash management software (FTL) in order to use D-SLC mechanism for extending the lifetime of the solid-state part of an SCM. Using an extensive simulation-based analysis of an SLC flash-based SCM, we demonstrate that D-SLC is able to significantly improve device lifetime (between 5.1X and 8.6X) with no performance overhead and also very small changes at the FTL software.

References

  1. Nitin Agrawal, Vijayan Prabhakaran, Ted Wobber, John D. Davis, Mark Manasse, and Rina Panigrahy. 2008. Design Tradeoffs for SSD Performance. In USENIX ATC. http://www.microsoft.com/en-us/download/details.aspx?id=52332. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Frank Berry. 2015. 2015 Enterprise Flash Storage. In Flash Memory SummitGoogle ScholarGoogle Scholar
  3. John S. Bucy, Jiri Schindler, Steven W. Schlosser, and Gregory R. Ganger. 2008. The DiskSim Simulation Environment Version 4.0 Reference Manual. In Carnegie Mellon University-PDL-08--101. http://www.pdl.cmu.edu/DiskSim/.Google ScholarGoogle Scholar
  4. G. W. Burr, B. N. Kurdi, J. C. Scott, C. H. Lam, K. Gopalakrishnan, and R. S. Shenoy. 2008. Overview of Candidate Device Technologies for Storage-Class Memory. In IBM Journal of Research and Development, Vol. 52, Issue. 4.5. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Werner Bux and Ilias Iliadis. 2010. Performance of Greedy Garbage Collection in Flash-based Solid-State Drives. In Journal of Performance Evaluation, VOL. 67, Issue. 11. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Yu Cai, Yixin Luo, Saugata Ghose, Erich F. Haratsch, Ken Mai, and Onur Mutlu. 2015. Read Disturb Errors in MLC NAND Flash Memory: Characterization, Mitigation, and Recovery. In DSN. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Yu Cai, Yixin Luo, Erich F. Haratsch, Ken Mai, and Onur Mutlu. 2015. Data Retention in MLC NAND Flash Memory: Characterization, Optimization and Recovery. In HPCA.Google ScholarGoogle Scholar
  8. Yu Cai, Gulay Yalcin, Onur Mutlu, Erich F. Haratsch, Osman Unsal, Adrian Cristal, and Ken Mai. 2014. Neighbor-Cell Assisted Error Correction for MLC NAND Flash Memories. In SIGMETRICS. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Feng Chen, David A. Koufaty, and Xiaodong Zhang. 2009. Understanding Intrinsic Characteristics and System Implications of Flash Memory Based Solid State Drives. In SIGMETRICS. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. R. F. Freitas and W. W. Wilcke. 2008. Storage-Class Memory: The Next Storage System Technology. In IBM Journal of Research and Development, Vol. 52, Issue. 4.5. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Laura M. Grupp, Adrian M. Caulfield, Joel Coburn, Steven Swanson, Eitan Yaakobi, Paul H. Siegel, and Jack K. Wolf. 2009. Characterizing Flash Memory: Anomalies, Observations, and Applications. In MICRO. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Jim Handy. 2016. Flash Technology: Annual Update. In Flash Memory Summit.Google ScholarGoogle Scholar
  13. Benny Van Houdt. 2013. A Mean Field Model for a Class of Garbage Collection Algorithms in Flash based Solid State Drives. In SIGMETRICS. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Benny Van Houdt. 2013. Performance of Garbage Collection Algorithms for Flash-based Solid State Drives with Hot/Cold Data. In Journal of Performance Evaluation, VOL. 70, Issue 10. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Jaeyong Jeong, Sangwook Hahn, Sungjin Lee, and Jihong Kim. 2014. Lifetime Improvement of NAND Flash-based Storage Systems Using Dynamic Program and Erase Scaling. In USENIX FAST. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Adwait Jog, Asit K. Mishra, Cong Xu, Yuan Xie, N. Vijaykrishnan, Ravishankar Iyer, and Chita R. Das. 2012. Cache Revive: Architecting Volatile STT-RAM Caches for Enhanced Performance in CMPs . In DAC. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Myoungsoo Jung and Mahmut Kandemir. 2012. An Evaluation of Different Page Allocation Strategies on High-Speed SSDs. In USENIX HotStorage. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Myoungsoo Jung and Mahmut Kandemir. 2013. Revisiting Widely Held SSD Expectations and Rethinking System-Level Implications. In SIGMETRICS. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Jae-Duk Lee, Jeong-Hyuk Choi, Donggun Park, and Kinam Kim. 2003. Degradation of Tunnel Oxide by FN Current Stress and Its Effects on Data Retention Characteristics of 90-nm NAND Flash Memory. In IRPS.Google ScholarGoogle Scholar
  20. Yongkun Li, Patrick P. C. Lee, and John C. S. Lui. 2013. Stochastic Modeling of Large-Scale Solid-State Storage Systems: Analysis, Design Tradeoffs and Optimization. In SIGMETRICS. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Ren-Shuo Liu, Chia-Lin Yang, and Wei Wu. 2012. Optimizing NAND Flash-Based SSDs via Retention Relaxation. In USENIX FAST. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Yixin Luo, Yu Cai, Saugata Ghose, Jongmoo Choi, and Onur Mutlu. 2015. WARM: Improving NAND Flash Memory Lifetime with Write-hotness Aware Retention Management. In MSST.Google ScholarGoogle Scholar
  23. Fabio Margaglia, Gala Yadgar, Eitan Yaakobi, Yue Li, Assaf Schuster, and Andre Brinkmann. 2016. The Devil Is in the Details: Implementing Flash Page Reuse with WOM Codes. In USENIX FAST. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Justin Meza, Qiang Wu, Sanjeev Kumar, and Onur Mutlu. 2015. A Large-Scale Study of Flash Memory Failures in the Field. In SIGMETRICS. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Micron. 2014. NAND Flash Memory MT29F32G08ABAAA, MT29F64G08AFAAA, MT29F128G08A{J/K/M}AAA, MT29F256G08AUAAA, MT29F32G08ABCAB, MT29F64G08AECAB, MT29F128G08A{K/M}CAB, MT29F256G08AUCAB.Google ScholarGoogle Scholar
  26. Neal Mielke, Hanmant Belgal, Ivan Kalastirsky, Pranav Kalavade, Andrew Kurtz, Qingru Meng, Nick Righos, and Jie Wu. 2004. Flash EEPROM Threshold Instabilities due to Charge Trapping During Program/Erase Cycling. In IEEE Transactions on Device and Materials Reliability, Vol. 4, No. 3.Google ScholarGoogle ScholarCross RefCross Ref
  27. Dushyanth Narayanan, Austin Donnelly, and Antory Rowstron. 2008. Write Off-Loading: Practical Power Management for Enterprise Storage. In USENIX FAST. http://iotta.snia.org/traces/388. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Yangyang Pan, Guiqiang Dong, Qi Wu, and Tong Zhang. 2012. Quasi-Nonvolatile SSD: Trading Flash Memory Nonvolatility to Improve Storage System Performance for Enterprise Applications. In HPCA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Thomas Parnell. 2016. NAND Flash Basics and Error Characteristics. In Flash Memory Summit.Google ScholarGoogle Scholar
  30. Moinuddin K. Qureshi, Sudhanva Gurumurthi, and Bipin Rajendran. 2011. Phase Change Memory: From Devices to Systems. Morgan & Claypool Publisher Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Clinton Wills Smullen, Vidyabhushan Mohan, Anurag Nigam, Sudhanva Gurumurthi, and Mircea R. Stan. 2011. Relaxing Non-Volatility for Fast and Energy-Efficient STT-RAM Caches. In HPCA.Google ScholarGoogle Scholar
  32. KangDeug Suh, Byung-Hoon Suh, Young-Ho Lim, Jin-Ki Kim, Young-Joon Choi, Yong-Nam Koh, Sung Soo Lee, Suk-Chon Kwon, Byung-Soon Choi, Jin-Sun Yum, Jung-Hyuk Choi, Jang-Rae Kim, and Hyung-Kyu Lim. 1995. A 3.3V 32Mb NAND Flash Memory with Incremental Step Pulse Programming Scheme. In ISSCC.Google ScholarGoogle Scholar
  33. Yuan Xie. 2011. Modeling, Architecture, and Applications for Emerging Memory Technologies. In IEEE Design and Test Computers, Vol. 28, No. 1. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Jie Zhang, Gieseo Park, David Donofrio, Mustafa Shihab, John Shalf, and Myoungsoo Jung. 2015. OpenNVM: An Open-Sourced FPGA-based NVM Controller for Low Level Memory Characterization. In ICCD Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Exploiting Data Longevity for Enhancing the Lifetime of Flash-based Storage Class Memory

      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

      • Published in

        cover image Proceedings of the ACM on Measurement and Analysis of Computing Systems
        Proceedings of the ACM on Measurement and Analysis of Computing Systems  Volume 1, Issue 1
        June 2017
        712 pages
        EISSN:2476-1249
        DOI:10.1145/3107080
        Issue’s Table of Contents

        Copyright © 2017 ACM

        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

        Publication History

        • Published: 13 June 2017
        Published in pomacs Volume 1, Issue 1

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader