Skip to main content
Log in

A novel method for victim block selection for NAND flash-based solid state drives based on scoring

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

The NAND flash memories have endurance issues in a high-performance computing (HPC) environment because of their blocks’ limited lifetime. Hence, the NAND flash block allocation and reclamation policies have a significant impact on its lifetime improvement. To address this problem, the scoring-based method is proposed in this paper, which employs priority-based victim block and active block selection methods. The priority of a block is estimated based on both of the score and a time factor. The comprehensive experiments using both realistic and synthetic benchmark traces are performed. The SSDsim simulation environment is extended to implement this method. The results reveal that in comparison with other methods, the proposed method improves endurance by at least 38%.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

References

  1. Hu Y et al (2011) Performance impact and interplay of SSD parallelism through advanced commands, allocation strategy and data granularity. In: Proceedings of the International Conference on Supercomputing, pp 96–107

  2. Mielke NR et al (2017) Reliability of solid-state drives based on NAND flash memory. Proc IEEE 105(9):1725–1750

    Article  Google Scholar 

  3. Wang W, Xie T (2014) PCFTL: a plane-centric flash translation layer utilizing copy-back operations. IEEE Trans Parallel Distrib Syst 26(12):3420–3432

    Article  Google Scholar 

  4. Compagnoni CM et al (2017) Reviewing the evolution of the NAND Flash technology. Proc IEEE 105(9):1609–1633

    Article  Google Scholar 

  5. Matsui C, Sun C, Takeuchi K (2017) Design of hybrid SSDs with storage class memory and NAND flash memory. Proc IEEE 105(9):1812–1821

    Article  Google Scholar 

  6. Cui J et al (2018) ApproxFTL: on the performance and lifetime improvement of 3-D NAND flash-based SSDs. IEEE Trans Comput Aided Des Integr Circuits Syst 37(10):1957–1970

    Article  Google Scholar 

  7. Sun C, Arakawa A, Takeuchi K (2014) Sea-SSD: a storage engine assisted ssd with application-coupled simulation platform. IEEE Trans Circuits Syst I Regul Pap 62(1):120–129

    Article  Google Scholar 

  8. Yang M-C et al (2016) Reducing data migration overheads of flash wear leveling in a progressive way. IEEE Trans Very Large Scale Integr (VLSI) Syst 24(5):1808–1820

    Article  Google Scholar 

  9. Fang A, Chien AA (2015) How much SSD is useful for resilience in supercomputers. In: Proceedings of the 5th Workshop on Fault Tolerance for HPC at eXtreme Scale. ACM, pp 47–54

  10. Yang Z (2018) Flash-based storage management in cloud computing datacenter infrastructures. Northeastern University

  11. Wan L et al (2017) Optimizing checkpoint data placement with guaranteed burst buffer endurance in large-scale hierarchical storage systems. J Parallel Distrib Comput 100:16–29

    Article  Google Scholar 

  12. Roh H et al (2017) Advanced block nested loop join for extending SSD lifetime. IEEE Trans Knowl Data Eng 29(4):743–756

    Article  Google Scholar 

  13. Tavakkol A et al (2016) Performance evaluation of dynamic page allocation strategies in SSDs. ACM Trans Model Perform Eval Comput Syst 1(2):7

    Article  Google Scholar 

  14. Tsao C-W et al (2015) Efficient victim block selection for flash storage devices. IEEE Trans Comput 64(12):3444–3460

    Article  MathSciNet  Google Scholar 

  15. Liu D et al (2017) A workload-aware flash translation layer enhancing performance and lifespan of TLC/SLC dual-mode flash memory in embedded systems. Microprocess Microsyst 52:343–354

    Article  Google Scholar 

  16. Company H-PD (2013) Technical white paper solid state drive technology differences between SLC, MLC and TLC NAND. http://h10032.www1.hp.com/ctg/Manual/c03757461

  17. Affiliates (2016) W.D.C.o.i. Flash 101 and flash management a detailed overview of flash and flash management techniques. https://documents.westerndigital.com/content/dam/doc-library/en_us/assets/public/western-digital/collateral/white-paper/white-paper-sandisk-flash101-management.pdf

  18. Kim B-K, Lee D-H (2015) A wear-leveling algorithm exploiting k-bitwise operations for flash storage devices. IEEE Trans Consum Electron 61(4):470–477

    Article  Google Scholar 

  19. Kim SH, Kwak JW (2016) Garbage collection technique using erasure interval for NAND flash memory-based storage systems. Int J Appl Eng Res 11(7):5188–5194

    Google Scholar 

  20. Chiang M-L, Chang R-C (1999) Cleaning policies in mobile computers using flash memory. J Syst Softw 48(3):213–231

    Article  Google Scholar 

  21. Wu C-H et al (2017) Rethink the design of flash translation layers in a component-based view. IEEE Access 5:12895–12912

    Article  Google Scholar 

  22. Matsui C et al (2016) Write order-based garbage collection scheme for an LBA scrambler integrated SSD. IEEE Trans Very Large Scale Integr (VLSI) Syst 25(2):510–519

    Article  Google Scholar 

  23. Guan Y et al (2017) A block-level log-block management scheme for MLC NAND flash memory storage systems. IEEE Trans Comput 66(9):1464–1477

    Article  MathSciNet  Google Scholar 

  24. Gupta A, Kim Y, Urgaonkar B (2009) DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings. ACM Sigplan Not 44(3):229

    Article  Google Scholar 

  25. Wang C, Wong W-F (2012) Observational wear leveling: an efficient algorithm for flash memory management. In: Proceedings of the 49th Annual Design Automation Conference, pp 235–242

  26. Cormen TH et al (2009) Introduction to algorithms. MIT Press, Cambridge

    MATH  Google Scholar 

  27. Lee Y et al (2013) Zombie chasing: efficient flash management considering dirty data in the buffer cache. IEEE Trans Comput 64(2):569–581

    Article  MathSciNet  Google Scholar 

  28. Wu, G, He X (2012) Delta-FTL: improving SSD lifetime via exploiting content locality. In: Proceedings of the 7th ACM European Conference on Computer Systems, pp 253–266

  29. Chen F, Luo T, Zhang X (2011) CAFTL: a content-aware flash translation layer enhancing the lifespan of flash memory based solid state drives. FAST 11:77–90

    Google Scholar 

  30. Sun C et al (2015) LBA scrambler: a nand flash aware data management scheme for high-performance solid-state drives. IEEE Trans Very Large Scale Integr VLSI Syst 24(1):115–128

    Article  Google Scholar 

  31. Capps D, Norcott W (2014) IOzone filesystem benchmark. Availavle: http://www.iozone.org/

  32. Coker R (2001) The Bonnie++ benchmark. http://www.coker.com.au/bonnie++/

  33. Axboe J (2016) Flexible i/o tester. https://github.com/axboe/fio

  34. Brunelle AD (2006) Block i/o layer tracing: blktrace. HP, Gelato-Cupertino, CA, USA

  35. Walpole RE et al (2011) Probability and statistics for engineers and scientists. Pearson Education, London

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mohammadreza Binesh Marvasti.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Khanbadr, A., Binesh Marvasti, M., Asghari, S.A. et al. A novel method for victim block selection for NAND flash-based solid state drives based on scoring. J Supercomput 76, 10186–10211 (2020). https://doi.org/10.1007/s11227-020-03250-w

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-020-03250-w

Keywords

Navigation