ABSTRACT
Solid state drives (SSDs) have seen wide deployment in mobiles, desktops,and data centers due to their high I/O performance and low energy consumption. As SSDs write data out-of-place, garbage collection (GC) is required to erase and reclaim space with invalid data. However, GC poses additional writes that hinder the I/O performance, while SSD blocks can only endure a finite number of erasures. Thus, there is a performance-durability tradeoff on the design space of GC. To characterize the optimal tradeoff, this paper formulates an analytical model that explores the full optimal design space of any GC algorithm. We first present a stochastic Markov chain model that captures the I/O dynamics of large-scale SSDs, and adapt the mean-field approach to derive the asymptotic steady-state performance. We further prove the model convergence and generalize the model for all types of workload. Inspired by this model, we propose a randomized greedy algorithm (RGA) that can operate along the optimal tradeoff curve with a tunable parameter. Using trace-driven simulation on DiskSim with SSD add-ons, we demonstrate how RGA can be parameterized to realize the performance-durability tradeoff.
- N. Agrawal, V. Prabhakaran, T. Wobber, J. D. Davis, M. Manasse, and R. Panigrahy. Design Tradeoffs for SSD Performance. In Proc. of USENIX ATC, Jun 2008. Google ScholarDigital Library
- M. Assar, S. Nemazie, and P. Estakhri. Flash Memorymass Storage Architecture Incorporation Wear Leveling Technique. US patent 5,479,638, Dec 1995.Google Scholar
- A. Ban. Wear Leveling of Static Areas in Flash Memory. US patent 6732221, May 2004.Google Scholar
- A. Ben-Aroya and S. Toledo. Competitive Analysis of Flash-memory Algorithms. In Proc. of Annual European Symposium, Sep 2006. Google ScholarDigital Library
- M. Benaım and J.-Y. L. Boudec. A Class of Mean Field Interaction Models for Computer and Communication Systems. Performance Evaluation, 2008. Google ScholarDigital Library
- A. Birrell, M. Isard, C. Thacker, and T. Wobber. A Design for High-performance Flash Disks. ACM SIGOPS Oper. Syst. Rev., 41(2):88--93, Apr 2007. Google ScholarDigital Library
- R. H. Bruce, R. H. Bruce, E. T. Cohen, and A. J. Christie. Unified Re-map and Cache-index Table with Dual Write-counters for Wear-leveling of Non-volitile Flash Ram Mass Storage. US patent 6,000,006, Dec 1999.Google Scholar
- J. S. Bucy, J. Schindler, S. W. Schlosser, and G. R. Ganger. The DiskSim Simulation Environment Version 4.0 Reference Manual. Technical Report Carnegie Mellon UniversityPDL-08--101, Carnegie Mellon University, May 2008.Google Scholar
- W. Bux and I. Iliadis. Performance of Greedy Garbage Collection in Flash-based Solid-state Drives. Performance Evaluation, November 2010. Google ScholarDigital Library
- L.-P. Chang and C.-D. Du. Design and Implementation of an Efficient Wear-leveling Algorithm for Solid-state-disk Microcontrollers. ACM Trans. Des. Autom. Electron. Syst., 15(1):6:1--6:36, Dec 2009. Google ScholarDigital Library
- L.-P. Chang and L.-C. Huang. A Low-cost Wear-leveling Algorithm for Block-mapping Solid-state Disks. In Proc of SIGPLAN/SIGBED Conf. on LCTES, Apr 2011. Google ScholarDigital Library
- Y.-H. Chang, J.-W. Hsieh, and T.-W. Kuo. Improving Flash Wear-Leveling by Proactively Moving Static Data. IEEE Tran. on Computers, 59:53--65, Jan 2010. Google ScholarDigital Library
- F. Chen, D. A. Koufaty, and X. Zhang. Understanding Intrinsic Characteristics and System Implications of Flash Memory Based Solid State Drives. In Proc. of ACM SIGMETRICS, Jun 2009. Google ScholarDigital Library
- M.-L. Chiang and R.-C. Chang. Cleaning Policies in Mobile Computers Using Flash Memory. J. Syst. Softw., 48(3):213--231, Nov 1999. Google ScholarDigital Library
- M.-L. Chiang, P. C. H. Lee, and R.-C. Chang. Using Data Clustering to Improve Cleaning Performance for Flash Memory. Softw. Pract. Exper., 29(3):267--290, Mar 1999. Google ScholarDigital Library
- T.-S. Chung, D.-J. Park, S. Park, D.-H. Lee, S.-W. Lee, and H.-J. Song. System Software For Flash Memory: A Survey. In Proc. of Int. Conf. on Embedded and Ubiquitous Computing, 2006. Google ScholarDigital Library
- T.-S. Chung, D.-J. Park, S. Park, D.-H. Lee, S.-W. Lee, and H.-J. Song. A Survey of Flash Translation Layer. Journal of Systems Architecture, 55(5--6):332--343, May 2009. Google ScholarDigital Library
- P. Desnoyers. Analytic Modeling of SSD Write Performance. In Proceedings of SYSTOR, 2012. Google ScholarDigital Library
- R. Enderle. Revolution in January: EMC Brings Flash Drives into the Data Center. http://www.itbusinessedge.com/blogs/rob/?p=184, Jan 2008.Google Scholar
- P. Estakhri, M. Assar, R. Reid, Alan, and B. Iman. Method of and Architecture for Controlling System Data with Automatic Wear Leveling in a Semiconductor Non-volitile Mass Storage Memory. US patent 5,835,935, Nov 1998.Google Scholar
- D. Floyer. Flash Pricing Trends Disrupt Storage. http://wikibon.org/wiki/v/Flash_Pricing_Trends_Disrupt_Storage, May 2010.Google Scholar
- E. Gal and S. Toledo. Algorithms and Data Structures for Flash Memories. ACM Computing Surveys, 37(2):138--163, Jun 2005. Google ScholarDigital Library
- L. M. Grupp, J. D. Davis, and S. Swanson. The Bleak Future of NAND Flash Memory. In Proc. of USENIX FAST, 2012. Google ScholarDigital Library
- A. Gupta, Y. Kim, and B. Urgaonkar. DFTL: A Flash Translation Layer Employing Demand-based Selective Caching of Page-level Address Mappings. In Proc. of ACM ASPLOS, March 2009. Google ScholarDigital Library
- A. Gupta, R. Pisolkar, B. Urgaonkar, and A. Sivasubramaniam. Leveraging Value Locality in Optimizing NAND Flash-based SSDs. In Proc. of USENIX FAST, 2011. Google ScholarDigital Library
- S.-W. Han. Flash Memory Wear Leveling System and Method. US patent 6,016,275, Jan 2000.Google Scholar
- K. Hess. 2011: Year of the SSD? http://www.datacenterknowledge.com/archives/2011/02/17/2011-year-of-the-ssd/, Feb 2011.Google Scholar
- X.-Y. Hu, E. Eleftheriou, R. Haas, I. Iliadis, and R. Pletka. Write Amplification Analysis in Flash-based Solid State Drives. In Proc. of SYSTOR, May 2009. Google ScholarDigital Library
- R. K. Jain, D.-M. W. Chiu, and W. R. Hawe. A Quantitative Measure Of Fairness And Discrimination For Resource Allocation In Shared Computer Systems. Technical report, DEC, 1984.Google Scholar
- D. Jung, Y.-H. Chae, H. Jo, J.-S. Kim, and J. Lee. A Group-based Wear-leveling Algorithm for Large-capacity Flash Memory Storage Systems. In Proc. of Int. Conf. on Compilers, Architecture, and Synthesis for Embedded Systems, Sep 2007. Google ScholarDigital Library
- A. Kawaguchi, S. Nishioka, and H. Motoda. A Flash-memory Based File System. In Proc. of USENIX Technical Conference, Jan 1995. Google ScholarDigital Library
- Y. Kim, A. Gupta, B. Urgaonkar, P. Berman, and A. Sivasubramaniam. HybridStore: A Cost-Efficient, High-Performance Storage System Combining SSDs and HDDs. In Proc. of IEEE MASCOTS, Jul 2011. Google ScholarDigital Library
- S.-W. Lee, D.-J. Park, T.-S. Chung, D.-H. Lee, S. Park, and H.-J. Song. A Log Buffer-based Flash Translation Layer Using Fully-associative Sector Translation. ACM Trans. on Embedded Computing Systems, 6(3), Jul 2007. Google ScholarDigital Library
- Y. Li, P. P. Lee, and J. C. Lui. Stochastic Modeling of Large-Scale Solid-State Storage Systems: Analysis, Design Tradeoffs and Optimization. Techinical report. arXiv:1303.4816.Google Scholar
- K. M. J. Lofgren, R. D. Norman, G. B. Thelin, and A. Gupta. Wear Leveling Techniques for Flash EEPROM Systems. US patent 6,850,443, Feb 2005.Google Scholar
- J. Matthews, S. Trika, D. Hensgen, R. Coulson, and K. Grimsrud. Intel® Turbo Memory: Nonvolatile Disk Caches in the Storage Hierarchy of Mainstream Computer Systems. ACM Trans. on Storage, 4(2):4:1--4:24, May 2008. Google ScholarDigital Library
- Micron Technology. Bad Block Management in NAND Flash Memory. Technical Note, TN-29--59, 2011.Google Scholar
- M. Mitzenmacher. Load Balancing and Density Dependent Jump Markov Processes. In Proc. of IEEE FOCS, Oct. 1996. Google ScholarDigital Library
- M. Murugan and D. Du. Rejuvenator: A Static Wear Leveling Algorithm for NAND Flash Memory with Minimized Overhead. In Proc. of IEEE MSST, May 2011. Google ScholarDigital Library
- C. Park, W. Cheon, J. Kang, K. Roh, W. Cho, and J.-S. Kim. A Reconfigurable FTL (Flash Translation Layer) Architecture for NAND Flash-based Applications. ACM Trans. Embed. Comput. Syst., 7(4):38:1--38:23, Aug 2008. Google ScholarDigital Library
- S. Park, Y. Kim, B. Urgaonkar, J. Lee, and E. Seo. A Comprehensive Study of Energy Efficiency and Performance of Flash-based SSD. Journal of Systems Architecture, 57(4):354--365, April 2011. Google ScholarDigital Library
- M. Polte, J. Simsa, and G. Gibson. Enabling Enterprise Solid State Disks Performance. In 1st Workshop on Integrating Solid-state Memory into the Storage Hierarchy, March 2009.Google Scholar
- Z. Qin, Y. Wang, D. Liu, and Z. Shao. Demand-based Block-level Address Mapping in Large-scale NAND Flash Storage Systems. In Proc. of IEEE/ACM/IFIP CODES+ISSS, Oct 2010. Google ScholarDigital Library
- Storage Performance Council. http://traces.cs.umass.edu/index.php/Storage/Storage, 2002.Google Scholar
- B. Van Houdt. A Mean Field Model for a Class of Garbage Collection Algorithms in Flash-based Solid State Drives. In Proc. of ACM SIGMETRICS, 2013. Google ScholarDigital Library
- A. Verma, R. Koller, L. Useche, and R. Rangaswami. SRCMap: Energy Proportional Storage using Dynamic Consolidation. In Proc. of USENIX FAST, Feb 2010. http://sylab.cs.fiu.edu/projects/srcmap/start. Google ScholarDigital Library
- S. E. Wells. Method for Wear Leveling in a Flash EEPROM Memory. US patent 5,341,339, Aug 1994.Google Scholar
Index Terms
- Stochastic modeling of large-scale solid-state storage systems: analysis, design tradeoffs and optimization
Recommendations
Stochastic modeling of large-scale solid-state storage systems: analysis, design tradeoffs and optimization
Performance evaluation reviewSolid state drives (SSDs) have seen wide deployment in mobiles, desktops,and data centers due to their high I/O performance and low energy consumption. As SSDs write data out-of-place, garbage collection (GC) is required to erase and reclaim space with ...
Stochastic modeling and optimization of garbage collection algorithms in solid-state drive systems
Markov chains and mean-field analysis are powerful tools and widely used for performance analysis in large-scale computer and communication systems. In this paper, we consider the application of Markov modeling and mean-field analysis to solid-state ...
Performance of greedy garbage collection in flash-based solid-state drives
In flash-based solid-state drives (SSD) and log-structured file systems, new data is written out-of-place, which over time exhausts the available free space. New free space is created by the garbage-collection process, which reclaims the space occupied ...
Comments