ECR: Eviction-cost-aware cache management policy for page-level flash-based SSDs
Hao Chen
School of Computer Science and Technology, University of Science and Technology of China, Hefei, China
Search for more papers by this authorYubiao Pan
School of Computer Science and Technology, Huaqiao University, Xiamen, China
Search for more papers by this authorCheng Li
School of Computer Science and Technology, University of Science and Technology of China, Hefei, China
Search for more papers by this authorCorresponding Author
Yinlong Xu
School of Computer Science and Technology, University of Science and Technology of China, Hefei, China
Yinlong Xu, School of Computer Science and Technology, University of Science and Technology of China, Hefei 230027, China.
Email: [email protected]
Search for more papers by this authorHao Chen
School of Computer Science and Technology, University of Science and Technology of China, Hefei, China
Search for more papers by this authorYubiao Pan
School of Computer Science and Technology, Huaqiao University, Xiamen, China
Search for more papers by this authorCheng Li
School of Computer Science and Technology, University of Science and Technology of China, Hefei, China
Search for more papers by this authorCorresponding Author
Yinlong Xu
School of Computer Science and Technology, University of Science and Technology of China, Hefei, China
Yinlong Xu, School of Computer Science and Technology, University of Science and Technology of China, Hefei 230027, China.
Email: [email protected]
Search for more papers by this authorSummary
Cache management policy plays a key role in offering low latency access to flash-based SSDs. Most existing solutions including LRU and its successors only focus on improving the cache hit ratio, but rarely consider to reduce the waiting time of the eviction operation in the page-level mapping FTLs. As the workloads spreading across internal chips of modern flash-based SSDs are often highly imbalanced when workloads are write-intensive, the time cost of evicting a dirty page from cache varies in a wide range. In this paper, we propose a novel eviction-cost-aware cache management policy, called ECR, to minimize the eviction cost in write-dominant applications. ECR gives a higher probability to evict a page, which causes the shortest waiting time in the corresponding chip queue. To achieve this, we introduce a monitor module to keep track of states of all chip queues, and a multi-LRU list structure to accelerate the selection of a victim chip and a target page in cache to perform an eviction. Our experimental results show that ECR can significantly reduce the average response time by as much as 59.55% and 44.84% compared to LRU and GCaR-CFLRU, respectively, where GCaR-CFLRU is the combination of state-of-the-art algorithm GCaR and CFLRU.
Supporting Information
Filename | Description |
---|---|
CPE_5395-Supp-0001-code.zipapplication/x-zip-compressed, 35.1 KB |
CPE_5395-Supp-0001-code.zip |
Please note: The publisher is not responsible for the content or functionality of any supporting information supplied by the authors. Any queries (other than missing content) should be directed to the corresponding author for the article.
REFERENCES
- 1Gupta A, Kim Y, Urgaonkar B. DFTL: A flash translation layer employing demand-based selective caching of page-level address mappings. In: ML Soffa, MJ Irwin, eds. ASPLOS XIV: Fourteenth International Conference on Architectural Support for Programming Languages and Operating Systems, March 7-11, 2009, Washington, DC, USA. New York, NY: ACM; 2009: 229-240.
10.1145/1508244.1508271 Google Scholar
- 2Agrawal N, Prabhakaran V, Wobber T, Davis JD, Manasse MS, Panigrahy R. Design tradeoffs for SSD performance. In: Proceedings of the USENIX Annual Technical Conference (ATC'08); 2008; Boston, MA.
- 3Liu C, Lv M, Pan Y, et al. LCR: load-aware cache replacement algorithm for flash-based SSDS. In: Proceedings of the 2018 IEEE International Conference on Networking, Architecture and Storage (NAS); 2018; Chongqing, China.
- 4Shim H, Seo B-K, Kim J-S, Maeng S. An adaptive partitioning scheme for DRAM-based cache in solid state drives. In: Proceedings of the IEEE 26th Symposium On Mass Storage Systems and Technologies (MSST); 2010; Incline Village, NV.
- 5Selvan Ramasamy A, Karantharaj P. RFLRU: a buffer cache management algorithm for solid state drive to improve the write performance on mixed workload. Engineering Letters. 2014; 22(4).
- 6Jain A, Lin C. Back to the future: leveraging Belady's algorithm for improved cache replacement. In: Proceedings of the ACM/IEEE Annual International Symposium on Computer Architecture (ISCA); 2016; Seoul, South Korea.
- 7Ding X, Jiang S, Chen F. A buffer cache management scheme exploiting both temporal and spatial localities. ACM Trans Storage. 2007; 3(2). Article No. 5.
10.1145/1242520.1242522 Google Scholar
- 8Johnson T, Shasha D. 2Q: a low overhead high performance buffer management replacement algorithm. In: JB Bocca, M Jarke, C Zaniolo, eds. Proceedings of the 20th International Conference on Very Large Data Bases (VLDB 94). Burlington, MA: Morgan Kaufmann Publishers; 1994: 439-450.
- 9O'neil EJ, O'neil PE, Weikum G. The LRU-K page replacement algorithm for database disk buffering. ACM SIGMOD Rec. 1993; 22(2): 297-306.
10.1145/170036.170081 Google Scholar
- 10Megiddo N, Modha DS. ARC: a self-tuning, low overhead replacement cache. In: Proceedings of the 2nd USENIX Conference on File and Storage Technologies (FAST '03); 2003; San Francisco, CA.
- 11Jiang S, Zhang X. LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance. ACM SIGMETRICS Perform Eval Rev. 2002; 30(1): 31-42.
- 12Kim H, Ahn S. BPLRU: A buffer management scheme for improving random writes in flash storage. In: M Baker, E Riedel, eds. USENIX Conference on File and Storage Technologies (FAST 2008). Berkeley, CA: USENIX Association; 2008: 239-252.
- 13Park S, Jung D, Kang J, Kim J, Lee J. CFLRU: a replacement algorithm for flash memory. In: Proceedings of the 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems; 2006; Seoul, South Korea.
- 14Jung H, Shim H, Park S, Kang S, Cha J. LRU-WSR: integration of LRU and writes sequence reordering for flash memory. IEEE Trans Consumer Electron. 2008; 54(3): 1215-1223.
- 15Li Z, Jin P, Su X, Cui K, Yue L. CCF-LRU: a new buffer replacement algorithm for flash memory. IEEE Trans Consumer Electron. 2009; 55(3): 1351-1359.
- 16Jin P, Ou Y, Härder T, Li Z. AD-LRU: an efficient buffer replacement algorithm for flash-based databases. Data Knowl Eng. 2012; 72: 83-102.
- 17Wu S, Lin Y, Mao B, Jiang H. GCaR: garbage collection aware cache management with improved performance for flash-based SSDS. In: Proceedings of the 2016 International Conference on Supercomputing; 2016; Istanbul, Turkey.
- 18Margaglia F, Yadgar G, Yaakobi E, Li Y, Schuster A, Brinkmann A. The devil is in the details: implementing flash page reuse with WOM codes. In: Proceedings of the 14th USENIX Conference on File and Storage Technologies (FAST); 2016; Santa Clara, CA.
- 19Elyasi N, Arjomand M, Sivasubramaniam A, Kandemir MT, Das CR, Jung M. Exploiting intra-request slack to improve SSD performance. ACM SIGOPS Oper Syst Rev. 2017; 51(2): 375-388.
10.1145/3093315.3037728 Google Scholar
- 20Tavakkol A, Gómez-Luna J, Sadrosadati M, Ghose S, Mutlu O. MQSim: a framework for enabling realistic studies of modern multi-queue SSD devices. In: Proceedings of the 16th USENIX Conference on File and Storage Technologies (FAST); 2018; Oakland, CA.
- 21Gao C, Shi L, Zhao M, Xue CJ, Wu K, Sha EH-M. Exploiting parallelism in i/o scheduling for access conflict minimization in flash-based solid state drives. In: Proceedings of the Symposium on Mass Storage Systems and Technologies (MSST); 2014; Santa Clara, CA.
- 22Shen Z, Shu J, Lee PPC. Reconsidering single failure recovery in clustered file systems. In: Proceedings of the 2016 46th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN); 2016; Toulouse, France.
- 23Bux W, Iliadis I. Performance of greedy garbage collection in flash-based solid-state drives. Performance Evaluation. 2010; 67(11): 1172-1186.
- 24Birrell A, Isard M, Thacker C, Wobber T. A design for high-performance flash disks. ACM SIGOPS Oper Syst Rev. 2007; 41(2): 88-93.
10.1145/1243418.1243429 Google Scholar
- 25Bucy JS, Schindler J, Schlosser SW, Ganger GR. The DiskSim Simulation Environment Version 4.0 Reference Manual (CMU-PDL-08-101) [technical report]. Pittsburgh, PA:Parallel Data Laboratory, Carnegie Mellon University; 2008: 26.
- 26Narayanan D, Donnelly A, Rowstron A. Write off-loading: practical power management for enterprise storage. ACM Trans Storage. 2008; 4(3). Article No. 10.
10.1145/1416944.1416949 Google Scholar
- 27 Microsoft Research. http://iotta.snia.org
- 28Hsu WW, Smith AJ. The performance impact of I/O optimizations and disk improvements. IBM J Res Dev. 2004; 48(2): 255-289.
- 29Wu G, Eckart B, He X. BPAC: an adaptive write buffer management scheme for flash-based solid state drives. In: Proceedings of the 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST); 2010; Incline Village, NV.
- 30Debnath B, Subramanya S, Du D, Lilja DJ. Large Block CLOCK (LB-CLOCK): a write caching algorithm for solid state disks. In: Proceedings of the 2009 IEEE International Symposium on Modeling, Analysis & Simulation of Computer and Telecommunication Systems; 2009; London, UK.
- 31Hu J, Jiang H, Tian L, Xu L. PUD-LRU: an erase-efficient write buffer management algorithm for flash memory SSD. In: Proceedings of the 2010 IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems; 2010; Miami Beach, FL.
- 32Seo D, Shin D. Recently-evicted-first buffer replacement policy for flash storage devices. IEEE Trans Consumer Electron. 2008; 54(3): 1228-1235.
- 33Liao XL, Hu SM. Bridging the information gap between buffer and flash translation layer for flash memory. IEEE Trans Consumer Electron. 2011; 57(4): 1765-1773.
- 34Boukhobza J, Olivier P, Rubini S, Lemarchand L, Hadjadj-Aoul Y, Laga A. MaCACH: an adaptive cache-aware hybrid FTL mapping scheme using feedback control for efficient page-mapped space management. J Syst Archit. 2015; 61(3-4): 157-171.
- 35Boukhobza J, Olivier P, Rubini S. A cache management strategy to replace wear leveling techniques for embedded flash memory. In: Proceedings of the 2011 International Symposium on Performance Evaluation of Computer & Telecommunication Systems; 2011; The Hague, The Netherlands.
- 36Park S, Cha J, Kang S. Integrated write buffer management for solid state drives. J Syst Archit. 2014; 60(4): 329-344.