Improving Hybrid Multi-Level I/O Cache Lifetime Using Conservative Cache Management

Document Type : Persian Original Article

Authors

1 Department of Computer Engineering Sharif University of Technology

2 Associate Professor Department of Computer Engineering Sharif University of Technology

Abstract

Hybrid cache architectures are promising solutions for designing efficient I/O caching schemes. One
of the major challenges of hybrid caches is the management of read miss data pages. As such pages are non-critical in term of data reliability, they can be buffered in volatile memories such as DRAM as an Endurance Friendly (EF) solution. Low capacity of DRAM, however, provides small hit ratio for these pages. A state-of-the-art solution has proposed a State-Machine Based Insertion (SMBI) scheme in order to improve cache performance by inserting read miss data pages in a Solid-State Drive (SSD), based on a static time periods. Nevertheless, the static approach of SMBI leads to considerable cache lifetime degradation compared to EF policy. In this paper, we propose Conservative State-Machine based Insertion (CSMI) scheme to improve I/O cache lifetime. CSMI dynamically adjusts the time that state-machine exploits EF approach based on workload behavior. To this end, CSMI employs a Conservative Factor (CF), which multiplies the number of periods that EF policy is exploited in case of low hit ratio. Our evaluations show that CSMI reduces the number of SSD writes up to 33.97%, compared to state-of-the art solution with negligible performance overhead (average of 0.06%).

Keywords


M. Khoso, “How Much Data Is Produced Every Day?,” [Online]. Available: http://www.northeastern.edu/levelblog/2016/05
/13/how-much-data-produced-every-day/. Accessed: 01/01/2018.
Violin Memory, “The Importance of How Data is Stored,” [Online]. Available: https://www.violinsystems.com/all-flash-storage/importance-of-data-storage/. Accessed: 27/02/2019.
Intel, “Game-changing Fast Memory Also a Big Deal for Big Data,” [Online]. Available: https://newsroom.intel.com/editorials/
3d-xpoint-memory-storage.Accessed: 23/06/2018.
F. Chen, D. A. Koufaty, and X. Zhang, “Understanding Intrinsic Characteristics and System Implications of Flash Memory Based Solid State Drives,” 32th International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS), New York, NY, USA, pp. 181-192, Aug. 2009.
F. Chen, D. A. Koufaty, and X. Zhang, “Hystor: Making the Best Use of Solid State Drives in High Performance Storage Systems,” 25th International Conference on Supercomputing (ICS), Tucson, AR., USA, pp. 22–32, Jun. 2011.
S. K. Yoon, Y. S. Youn, S. J. Nam, M. H. Son, and S. D. Kim, “Optimized Memory-Disk Integrated System with DRAM and Nonvolatile Memory,” IEEE Transactions on Multi-Scale Computing Systems (TMSCS), vol. 2, no. 2, pp. 83-93, Apr. 2016.
R. Salkhordeh, S. Ebrahimi, and H. Asadi, “ReCA: an Efficient Reconfigurable Cache Architecture for Storage Systems with Online Workload Characterization,” IEEE Transactions on Parallel and Distributed Systems (TPDS), vol. 29, no.7, pp.1605-1620, Jul. 2018.
R. Salkhordeh, M. Hadizadeh, and H. Asadi, “An Efficient Hybrid I/O Caching Architecture Using Heterogeneous SSDs,” IEEE Transactions on Parallel and Distributed Systems (TPDS), Vol. 30, Issue 6,  pp. 1238-1250, Jun. 2019.
S. Huang, Q. Wei, J. Chen, C. Chen, and D. Feng, “Improving Flash-Based Disk Cache with Lazy Adaptive Replacement,” 29th IEEE Symposium on Mass Storage Systems and Technologies (MSST), Long Beach, CA, USA, pp. 1-10, May 2013.
 D. Jiang, Y. Che, J. Xiong, and X. Ma, “uCache: A Utility-Aware Multilevel SSD Cache Management Policy,” 10th IEEE International Conference on High Performance Computing and Communications & IEEE International Conference on Embedded and Ubiquitous Computing (HPCC_EUC), Zhangjiajie, China, pp. 391-398, Nov. 2013.
Y. Ni, J. Jiang, D. Jiang, X. Ma, J. Xiong, and Y. Wang,
“S-RAC: SSD Friendly Caching for Data Center Workloads,” 9th ACM International System Storage Conference (SYSTOR), pp. 8:1-8:12, Jun. 2016.
L. Shi, J. Li, C. J. Xue, and X. Zhou, “Hybrid Nonvolatile Disk Cache for Energy-efficient and High-performance Systems,” ACM Transactions on Design Automation of Electronic Systems (TODAES), vol. 18, no. 1, pp. 8:1-8:23, Jan. 2013.
Y. Liang, Y. Chai, N. Bao, H. Chen, and Y Liu, “Elastic Queue: A Universal SSD Lifetime Extension Plug-in for Cache Replacement Algorithms,” 9th ACM International Systems & Storage Conference (SYSTOR), pp. 5:1-5:11, Jun. 2016.
S. Huang, Q. Wei, D. Feng, J. Chen, and C. Chen, “Improving Flash-Based Disk Cache               with Lazy Adaptive Replacement,” ACM Transactions on Storage (TOS), vol. 12, no. 2, pp. 8:1-8:24, Feb. 2016.
N. Megiddo and D. S. Modha, “Outperforming LRU with an Adaptive Replacement Cache Algorithm,” Computer, vol. 37, no. 4, pp. 58-65, Apr. 2004.
R. Appuswamy, D. C. van Moolenbroek, and A. S. Tanenbaum, “Cache, Cache Everywhere, Flushing All Hits Down The Sink: On Exclusivity in Multilevel, Hybrid Caches,” IEEE 29th Symposium on Mass Storage Systems and Technologies (MSST), Long Beach, CA, pp. 1-14, May 2013.
R. S. Liu, C. L. Yang, C. H. Li, and G. Y. Chen, “DuraCache: A Durable SSD Cache Using MLC NAND Flash,” 50th ACM/EDAC/IEEE Design Automation Conference (DAC), Austin, TX, USA, pp. 1-6, Jun. 2013..
Y. Klonatos, T. Makatos, M. Marazakis, M. Flouris, and A. Bilas, “Azor: Using Two-Level Block Selection to Improve SSD-based I/O Caches,” 6th IEEE International Conference on Networking, Architecture and Storage (NAS), Dalian, China, pp.309-318, Jul. 2011.
D. Narayanan, A. Donnelly, and A. Rowstron, “Write Off-Loading: Practical Power Management for Enterprise Storage,”ACM Transactions on Storage (TOS), vol. 4, no. 3, pp. 1–23, Nov. 2008.
Storage Networking Industry Association IOTTA Repository, “Microsoft Enterprise Traces,” [Online]. Available: http://iotta.snia.org/traces/130. Accessed: 01/01/2018.
Storage Networking Industry Association IOTTA Repository, “Microsoft Production Server Traces,” [Online]. Available:  http://iotta.snia.org/traces/158. Accessed: 01/01/2018.
S. He, Y. Wang, Z. Li, X. H. Sun, and C. Xu, “Cost-Aware Region-Level Data Placement in Multi-Tiered Parallel I/O Systems,” IEEE Transactions on Parallel and Distributed Systems (TPDS), vol. 28, no. 7, pp. 1853-1865, Jul. 2017.
R. Salkhordeh, H. Asadi, and S. Ebrahimi, “Operating System Level Data Tiering Using Online Workload Characterization,” The Journal of Supercomputing, vol. 71, no. 4,pp. 1534-1562, Apr. 2015.
D. Lee, S. Yoon, J. Kim, C. C. Weems, and S. D. Kim, “A New Memory-Disk Integrated System with HW Optimizer,” ACM Transactions on Architecture and Code Optimization (TACO), vol. 12, no. 2, pp. 11:1-11:23, Apr. 2015.
S. K. Yoon, M. Y. Bian, and S. D. Kim, “An Integrated Memory-Disk System with Buffering Adapter and Non-Volatile Memory,” Springer Design Automation for Embedded System, vol. 17, no. 3, pp. 609-626, Sep. 2013.
Y. Cheng, W. Chen, Z. Wang, X. Yu, and Y. Xiang, “AMC: an adaptive multi-level cache algorithm in hybrid storage systems,” Concurrency and Computation: Practice and Experience, vol. 27, no. 16, pp. 4230-4246,Nov. 2015.
R. Salkhordeh and H. Asadi, “An Operating System level data migration scheme in hybrid DRAM-NVM memory architecture,” 51st IEEE/ACM Design, Automation & Test in Europe Conference & Exhibition (DATE),Dresden, Germany, pp. 936-941, Mar. 2016.
E. Cheshmikhani, H. Farbeh, S.G. Miremadi, and H. Asadi, “TA-LRW: A Replacement Policy for Error Rate Reduction in STT-MRAM Caches,” IEEE Transactions on Computers (TC), Vol. 68, No. 3, March 2019.
R. Salkhordeh, O. Mutlu, and H. Asadi, “An Analytical Model for Performance and Lifetime Estimation of Hybrid DRAM-NVM Main Memories,” IEEE Transactions on Computers (TC), In Press, 2019.
R. Koller, A. J. Mashtizadeh and R. Rangaswami, "Centaur: Host-Side SSD Caching for Storage Performance Control," 2015 IEEE International Conference on Autonomic Computing (ICAC), Grenoble, France, pp. 51-60, Jul. 2015.
S. Ahmadian, O. Mutlu, and H. Asadi, “ECI-Cache: A High-Endurance and Cost-Efficient I/O Caching Scheme for Virtualized Platforms,” ACM on Measurement and Analysis of Computing Systems (SIGMETRICS), Irvine, CA, USA, pp. 9:1-9:34, Jun. 2018.
Z. Shen, F. Chen, Y. Jia, and Z. Shao, “DIDACache: A Deep Integration of Device and Application for Flash Based Key-Value Caching,” 15th USENIX Conference on File and Storage Technologies (FAST), Santa Clara, CA, USA, pp. 391-405, Feb. 2017.
S. Xu, S. Lee, S. W. Jun, M. Liu, and J. Hicks, “Bluecache: A Scalable Distributed Flash-Based Key-Value Store,” 42nd international conference on very large data bases (VLDB), New Delhi, India, pp. 301-312, Mar. 2016.
Z. Shen, F. Chen, Y. Jia, Z. and Shao, “Optimizing Flash-based Key-value Cache Systems,” 8th USENIX Conference on Hot Topics in Storage and File Systems (HotStorage), Denver, CO, USA, pp. 1-5, Jun. 2016.
J. J. Kan, C. Park, C. Ching, J. Ahn, Y. Xie, M. Pakala, and S. H. Kang, “A Study on Practically Unlimited Endurance of STT-MRAM,” IEEE Transactions on Electron Devices (TED), vol. 64, no. 9, pp. 3639-3646, Sep. 2017.
M. Tarihi, H. Asadi, A. Haghdoost, M. Arjomand, and H. Sarbazi-Azad, “A Hybrid Non-Volatile Cache Design for Solid-State Drives Using Comprehensive I/O Characterization,” IEEE Transactions on Computers (TC), vol. 65, no. 6, pp. 1678-1691, Jun. 2016.
J. Niu, J. Xu and L. Xie, “Hybrid Storage Systems: A Survey of Architectures and Algorithms,” IEEE Access, vol. 6, pp. 13385-3406, Feb. 2018.
W. Fischer, “Linux Storage Stack Diagram,” [Online]. Available: https://www.thomas-krenn.com/en/wiki/Linux_Storage_Stack_
Diagram. Accessed: 08/04/2019.
M. Kishani, M. B. Tahoori, and H. Asadi, “Dependability Analysis of Data Storage Systems in Presence of Soft Errors”, IEEE Transactions on Reliability (TR), Vol. 68, Issue 1, Mar. 2019.
S. Ahmadian, R. Salkhordeh, and H. Asadi, “LBICA: A Load Balancer for I/O Cache Architectures”, 54th IEEE/ACM Design, Automation and Test in Europe Conference (DATE), Florence, Italy, pp. 1196-1201, Mar. 2019.
Samsung, “Samsung SSD Magician DC 2.0,” [Online.] Available: http://downloadcenter.samsung.com/content/SW/201711/20171115131146153/Samsung_Magician_DC_Brand_v2_User_Guide.pdf. Accessed: 26/10/19.
Q. Xia and W. Xiao, “High-Performance and Endurable Cache Management for Flash-Based Read Caching,” IEEE Transactions on Parallel and Distributed Systems (TPDS), vol. 27, no. 12, pp. 3518-3531, Dec. 2016.
J. Wan, W. Wu, L. Zhan, Q. Yang, X. Qu, and C. Xie, “DEFT-Cache: A Cost- Effective and Highly Reliable SSD Cache for RAID Storage,” IEEE International Parallel and Distributed Processing Symposium (IPDPS), Orlando, FL, USA, pp. 102-111, May 2017.