ABSTRACT
For NAND flash-based storage systems, managing garbage collection (GC) efficiently is a critical requirement to achieve both high performance and long lifetimes. In this paper, we propose a just-in-time GC technique, called JIT-GC, which invokes background GC operations only when necessary depending on future write demands. JIT-GC was motivated by our measurement study, which strongly suggested that deciding when to invoke background GC operations is a key parameter for efficient GC. By accurately estimating the amount of future SSD writes, JIT-GC can choose the best time to invoke a background GC operation. JIT-GC reserves necessary free space in advance so that high write performance can be achieved while it extends the SSD lifetime by preventing premature block erasures. Our evaluations on real SSDs show that JIT-GC can achieve both high performance and long lifetimes, thus overcoming the shortcomings of existing background GC invocation heuristics.
- H. Nakamura et al., "A 125mm2 1Gb NAND Flash Memory with 10MB/s Program Throughput," in Proc. IEEE Solid-State Circuits Conf., pp. 106--107, 2002.Google Scholar
- M. Goldman et al., "25nm 64Gb 130mm2 3bpc NAND Flash Memory," in Proc. IEEE Int. Memory Workshop, 2011.Google Scholar
- SAMSUNG 843T Data Center Series, http://memorysolution.de/mso_upload/out/all/SM843T_Specification_v1.0.pdfGoogle Scholar
- B. F. Cooper et al., "Benchmarking Cloud Serving Systems with YCSB," in Proc. ACM Symp. Cloud Computing, pp. 143--154, 2010. Google ScholarDigital Library
- P. Sehgal et al., "Evaluating Performance and Energy in File System Server Workloads," in Proc. USENIX Conf. File and Storage Technologies, pp. 19--33, 2010. Google ScholarDigital Library
- S. Lee et al., "Improving Performance and Capacity of Flash Storage Devices by Exploiting Heterogeneity of MLC Flash Memory," IEEE Trans. Computers, vol. 63, no. 10, pp. 2445--2458, 2014. Google ScholarDigital Library
- S.-H. Park et al., "An Adaptive Idle-Time Exploiting Method for Low Latency NAND Flash-Based Storage Devices," IEEE Trans. Computers, vol. 63, no. 5, pp. 1085--1096, 2014. Google ScholarDigital Library
- S. Lee et al., "BAGC: Buffer-Aware Garbage Collection for Flash-Based Storage Systems," IEEE Trans. Computers, vol. 62, no. 11, pp. 2141--2154, 2013. Google ScholarDigital Library
- Y. Lee et al., "Zombie Chasing: Efficient Flash Management Considering Dirty Data in the Buffer Cache," IEEE Trans. Computers, no. 1, pp. 1, PrePrints, 2013.Google Scholar
Index Terms
- To collect or not to collect: just-in-time garbage collection for high-performance SSDs with long lifetimes
Recommendations
Optimal Choice of When to Garbage Collect
We consider the ultimate limits of program-specific garbage collector (GC) performance for real programs. We first characterize the GC schedule optimization problem. Based on this characterization, we develop a linear-time dynamic programming solution ...
Learning when to garbage collect with random forests
ISMM 2019: Proceedings of the 2019 ACM SIGPLAN International Symposium on Memory ManagementGenerational garbage collectors are one of the most common types of automatic memory management. We can minimize the costs they incur by carefully choosing the points in a program's execution at which they run. However, this decision is generally based ...
A Flexible Garbage Collect Algorithm for Flash Storage Management
FGCN '08: Proceedings of the 2008 Second International Conference on Future Generation Communication and Networking - Volume 01Log-structured file system (LFS) is widely used in multimedia terminals, which always use flash memory as main storage. Flash memory must be erased before writing and the maximum erasure times of each block is limited, therefore, the flash storage ...
Comments