Advertisement

Journal of Computer Science and Technology

, Volume 34, Issue 1, pp 113–132 | Cite as

Extending SSD Lifespan with Comprehensive Non-Volatile Memory-Based Write Buffers

  • Ziqi Fan
  • Dongchul ParkEmail author
Regular Paper
  • 7 Downloads

Abstract

New non-volatile memory (NVM) technologies are expected to replace main memory DRAM (dynamic random access memory) in the near future. NAND flash technological breakthroughs have enabled wide adoption of solid state drives (SSDs) in storage systems. However, flash-based SSDs, by nature, cannot avoid low endurance problems because each cell only allows a limited number of erasures. This can give rise to critical SSD reliability issues. Since many SSD write operations eventually cause many SSD erase operations, reducing SSD write traffic plays a crucial role in SSD reliability. This paper proposes two NVM-based buffer cache policies which can work together in different layers to maximally reduce SSD write traffic: a main memory buffer cache design named Hierarchical Adaptive Replacement Cache (H-ARC) and an internal SSD write buffer design named Write Traffic Reduction Buffer (WRB). H-ARC considers four factors (dirty, clean, recency, and frequency) to reduce write traffic and improve cache hit ratios in the host. WRB reduces block erasures and write traffic further inside an SSD by effectively exploiting temporal and spatial localities. These two comprehensive schemes significantly reduce total SSD write traffic at each different layer (i.e., host and SSD) by up to 3x. Consequently, they help extend SSD lifespan without system performance degradation.

Keywords

buffer cache policy write buffer non-volatile memory solid state drive flash memory 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Notes

Acknowledgment

We specially appreciate Dr. Guanlin Lu (Dell-EMC Corporation, USA)’s valuable comments for this manuscript.

Supplementary material

11390_2019_1902_MOESM1_ESM.pdf (384 kb)
ESM 1 (PDF 384 kb)

References

  1. [1]
    Fan Z, Haghdoost A, Du D H, Voigt D. I/O-Cache: A non-volatile memory based buffer cache policy to improve storage performance. In Proc. the 23rd IEEE International Symposium on Modeling, Analysis and Simulations of Computer and Telecommunication Systems, October 2015, pp.102-111.Google Scholar
  2. [2]
    Fan Z, Wu F, Park D, Diehl J, Voigt D, Du D H. Hibachi: A cooperative hybrid cache with NVRAM and DRAM for storage arrays. In Proc. the 33rd IEEE Symposium on Mass Storage Systems and Technologies, May 2017.Google Scholar
  3. [3]
    Fan Z. Improving storage performance with non-volatile memory-based caching systems [Ph.D. Thesis]. University of Minnesota, 2017.Google Scholar
  4. [4]
    Lee B C, Ipek E, Mutlo O, Burger D. Architecting phase change memory as a scalable DRAM alternative. In Proc. the 36th Annual International Symposium on Computer Architecture, June 2009, pp.2-13.Google Scholar
  5. [5]
    Lee E, Bahn H, Noh S H. Unioning of the buffer cache and journaling layers with nonvolatile memory. In Proc. the 11th USENIX Conference on File and Storage Technologies, February 2013, pp.73-80.Google Scholar
  6. [6]
    Wang J, Park D, Papakonstantinou Y, Swanson S. SSD instorage computing for search engines. IEEE Transactions on Computers. doi: https://doi.org/10.1109/TC.2016.2608818.
  7. [7]
    Park D, Wang J, Kee Y S. In-storage computing for Hadoop MapReduce framework: Challenges and possibilities. IEEE Transactions on Computers. doi:  https://doi.org/10.1109/TC.2016.2595566.
  8. [8]
    Kim H, Ahn S. BPLRU: A buffer management scheme for improving random writes in flash storage. In Proc. the 6th USENIX Conference on File and Storage Technologies, February 2008, pp.239-252.Google Scholar
  9. [9]
    Wu G, He X, Eckart B. An adaptive write buffer management scheme for flash-based SSDs. ACM Transactions on Storage, 2012, 8(1): Article No. 1.Google Scholar
  10. [10]
    Jung H, Shim H, Park S, Kang S, Cha J. LRU-WSR: Integration of LRU and writes sequence reordering for flash memory. IEEE Transactions on Consumer Electronics, 2008, 54(3): 1215-1223.Google Scholar
  11. [11]
    Jo H, Kang J, Park S, Kim J, Lee J. FAB: Flash-aware buffer management policy for portable media players. IEEE Transactions on Consumer Electronics, 2006 52(2): 485-493.Google Scholar
  12. [12]
    Huang S, Wei Q, Chen J, Chen C, Feng D. Improving flashbased disk cache with lazy adaptive replacement. In Proc. the 29th IEEE Symposium on Mass Storage Systems and Technologies, May 2013, Article No. 7.Google Scholar
  13. [13]
    Qiu S, Reddy A L N. NVMFS: A hybrid file system for improving random write in NAND flash SSD. In Proc. the 29th IEEE Symposium on Mass Storage Systems and Technologies, May 2013, Article No. 14.Google Scholar
  14. [14]
    Megiddo N, Modha D S. ARC: A self-tuning, low overhead replacement cache. In Proc. the 2nd USENIX on File and Storage Technologies, March 2003, pp.115-130.Google Scholar
  15. [15]
    Coughlin T, Grochowski E. Emerging nonvolatile memory and spin logic technology and memory manufacturing report. https://docplayer.net/28315664-2015-emerging-nonvolatile-memory-spin-logic-technology-and-manufacturingreport.html, Dec. 2018.
  16. [16]
    Park D, Debnath B, Du D H. CFTL: A convertible flash translation layer adaptive to data access patterns. In Proc. the ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems, June 2010, pp.365-366.Google Scholar
  17. [17]
    Wang J, Lo E, YiuM L, Tong J,Wang G, Liu X. The impact of solid state drive on search engine cache management. In Proc. the 36th International ACM SIGIR Conference on Research and Development in Information Retrieval, July 2013, pp.693-702.Google Scholar
  18. [18]
    Park D, Debnath B, Du D H. A dynamic switching flash translation layer based on a page-level mapping. IEICE Transactions on Information and Systems, 2016, E99D(6): 1502-1511.Google Scholar
  19. [19]
    Murugan M, Du D H. Rejuvenator: A static wear leveling algorithm for NAND flash memory with minimized overhead. In Proc. the 27th IEEE Symposium on Mass Storage Systems and Technologies, May 2011.Google Scholar
  20. [20]
    Agrawal N, Prabhakaran V, Wobber T, Davis J, Manasse M, Panigrahy R. Design tradeoffs for SSD performance. In Proc. USENIX Annual Technical Conference, June 2008, pp.57–70.Google Scholar
  21. [21]
    Park D, Debnath B, Du D H. A workload-aware adaptive hybrid flash translation layer with an efficient caching strategy. In Proc. the 19th IEEE International Symposium on Modeling, Analysis and Simulations of Computer and Telecommunication Systems, July 2011, pp.248-255.Google Scholar
  22. [22]
    Chang L, Kuo T. An adaptive striping architecture for flash memory storage systems of embedded systems. In Proc. the 8th IEEE Real-Time and Embedded Technology and Applications Symposium, August 2007, pp.187-196.Google Scholar
  23. [23]
    Jung D, Chae Y, Jo H, Kim J, Lee J. A group-based wearleveling algorithm for large capacity flash memory storage systems. In Proc. ACM International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, September 2007, pp.160-164.Google Scholar
  24. [24]
    Chang L. On efficient wear leveling for large-scale flash memory storage systems. In Proc. the 22nd ACM Symposium on Applied Computing, March 2007, pp.1126-1130.Google Scholar
  25. [25]
    Kang J, Jo H, Kim J, Lee J. A superblock-based flash translation layer for NAND flash memory. In Proc. ACM International Conference on Embedded Software, October 2006, pp.161-170.Google Scholar
  26. [26]
    Elliott J, Jung E S. Ushering in the 3D memory era with VNAND. 2013. https://www.Flashmemorysummit.com/English/Collaterals/Proceedings/2013/20130813_KeynoteB_Elliot_Jung.pdf, September 2018.
  27. [27]
    Raoux S, Burr G W, Breitwisch M J, Rettner C T, Chen Y C, Shelby R M, Salinga M, Krebs D, Chen S H, Lung H L, Lam C H. Phase-change random access memory: A scalable technology. IBM Journal of Research and Development, 2008, 52(4.5): 465-479.CrossRefGoogle Scholar
  28. [28]
    Raoux S, Xiong F, Wwttig M, Pop E. Phase change materials and phase change memory. MRS Bulletin, 2014, 39(08): 703-710.CrossRefGoogle Scholar
  29. [29]
    Qureshi M K, Srinivasan V, Rivers J A. Scalable high performance main memory system using phase-change memory technology. In Proc. the 36th Annual International Symposium on Computer Architecture, June 2009, pp.24-33.Google Scholar
  30. [30]
    Zhang W, Li T. Exploring phase change memory and 3D die-stacking for power/thermal friendly, fast and durable memory architectures. In Proc. the 18th International Conference on Parallel Architectures and Compilation Techniques, September 2009, pp.101-112.Google Scholar
  31. [31]
    Sohail H B, Vamanan B, Vijaykumar T N. MigrantStore: Leveraging virtual memory in DRAM-PCM memory architecture. Technical Report, Purdue University, 2012. https://docs.lib.purdue.edu/cgi/viewcontent.cgi?article=1-428&context=ecetr, September 2018.
  32. [32]
    Ramos L, Gorbatov E, Bianchini R. Page placement in hybrid memory systems. In Proc. the 25th International Conference on Supercomputing, May 2011, pp.85-95.Google Scholar
  33. [33]
    Wu X, Reddy A L N. SCMFS: A file system for storage class memory. In Proc. the International Conference for High Performance Computing, Networking, Storage and Analysis, November 2011, Article No. 39.Google Scholar
  34. [34]
    Freitas R. Storage class memory: Technology, systems and applications. In Proc. IEEE Hot Chips Symposium, August 2010.Google Scholar
  35. [35]
    Gallagher W J, Parkin S S P. Development of the magnetic tunnel junction MRAM at IBM: From first junctions to a 16-Mb MRAM demonstrator chip. IBM Journal of Research and Development, 2006, 50(1): 5-23.Google Scholar
  36. [36]
    Kawahara T, Ito K, Takemura R, Ohno H. Spin-transfer torque RAM technology: Review and prospect. Microelectronics Reliability, 2012, 52(4): 613-627.Google Scholar
  37. [37]
    Waser R, Dittmann R, Staikov G, Szot K. Redoxbased resistive switching memories — Nanoionic mechanisms, prospects, and challenges. Advanced Materials, 2009, 21(25/26): 2632-2663.Google Scholar
  38. [38]
    Bourzac K. Has Intel created a universal memory technology? IEEE Spectrum, 2017, 54(5): 9-10.Google Scholar
  39. [39]
    Fan Z, Du D H, Voigt D. H-ARC: A non-volatile memory based cache policy for solid state drives. In Proc. the 30th IEEE Symposium on Mass Storage Systems and Technologies, June 2014, Article No. 16.Google Scholar
  40. [40]
    Belady A. A study of replacement algorithms for virtual storage computers. IBM Systems Journal, 1966, 5(2): 78-101.Google Scholar
  41. [41]
    Mattson R L, Gecsei J, Slutz D R, Traiger I L. Evaluation techniques for storage hierarchies. IBM Systems Journal, 1970, 9(2): 78-117.Google Scholar
  42. [42]
    Aho V, Denning J, Ullman D. Principles of optimal page replacement. Journal of the ACM, 1971, 18(1): 80-93.Google Scholar
  43. [43]
    Cheng Y, Douglis F, Shilane P, Trachtman M, Wallace G, Desnoyers P, Li K. Erasing Belady’s limitations: In search of flash cache offline optimality. In Proc. USENIX Annual Technical Conference, June 2016, pp.379-392.Google Scholar
  44. [44]
    Park S, Jung D, Kang J, Kim J, Lee J. CFLRU: A replacement algorithm for flash memory. In Proc. International Conference on Compilers, Architecture, and Synthesis for Embedded Systems, October 2006, pp.234-241.Google Scholar
  45. [45]
    Debnath B, Subramanya S, Du D H, Lilja D J. Large block CLOCK (LB-CLOCK): A write caching algorithm for solid state disks. In Proc. the 17th IEEE International Symposium on Modeling, Analysis and Simulations of Computer and Telecommunication Systems, September 2009, Article No. 28.Google Scholar
  46. [46]
    Wang J, Park D, Kee Y S, Papakonstantinou Y, Swanson S. SSD in-storage computing for list intersection. In Proc. the 12th International Workshop on Data Management on New Hardware, June 2016, Article No. 4.Google Scholar
  47. [47]
    Narayanan D, Donnelly A, Rowstron A I T. Write offloading: Practical power management for enterprise storage. In Proc. the 6th USENIX Conference on File and Storage Technologies, February 2008, pp.253-267.Google Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2019

Authors and Affiliations

  1. 1.Department of Computer Science and EngineeringUniversity of Minnesota–Twin CitiesMinneapolisUSA
  2. 2.Division of Computer and Electronic Systems EngineeringHankuk University of Foreign StudiesGyeonggi-doSouth Korea

Personalised recommendations