The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.03 - March (2014 vol.25)
pp: 653-662
Chentao Wu , Shanghai Jiao Tong University, Shanghai
Xubin He , Virginia Commonwealth University, Richmond
Qiang Cao , Huazhong University of Science and Technology, Wuhan
Changsheng Xie , Huazhong University of Science and Technology, Wuhan
Shenggang Wan , Huazhong University of Science and Technology, Wuhan
ABSTRACT
I/O performance has been critical for large-scale distributed systems. Many approaches, including hint-based multilevel cache, have been proposed to smooth the gap between different levels. These solutions demote or promote cache blocks based on the latest history information, which is insufficient for applications where frequent demote and promote operations occur. In this paper, we propose a novel multilevel buffer cache using K-step hints (Hint-K) to improve the I/O performance of distributed systems. The basic idea is to promote a block from the lower level cache to the higher level(s) or demote a block vice versa based on the block's previous K-step promote or demote operations, which are referred to as K-step hints. If we make an analogy between Hint-K and LRU-K, then LRU-K keeps track of the times of last K references for blocks within a single cache level, while our Hint-K keeps track of the information of the last K movements (either demote or promote) of blocks among different cache levels. We develop our Hint-K algorithms and design a mathematical model that can efficiently describe the activeness of any block in any cache level. Simulation results show that Hint-K achieves better performance compared to the existing popular multilevel cache schemes such as PROMOTE, DEMOTE, and MQ under different I/O workloads.
INDEX TERMS
History, Algorithm design and analysis, Mathematical model, Tracking, Data models, Educational institutions, Helium,I/O performance, Multilevel cache, hints, demote, promote
CITATION
Chentao Wu, Xubin He, Qiang Cao, Changsheng Xie, Shenggang Wan, "Hint-K: An Efficient Multilevel Cache Using K-Step Hints", IEEE Transactions on Parallel & Distributed Systems, vol.25, no. 3, pp. 653-662, March 2014, doi:10.1109/TPDS.2013.49
REFERENCES
[1] L. Bairavasundaram, M. Sivathanu, A. Arpaci-Dusseau, and R. Arpaci-Dusseau, "X-RAY: A Non-Invasive Exclusive Caching Mechanism for RAIDs," Proc. 31th Ann. Int'l Symp. Computer Architecture, June 2004.
[2] S. Bansal and D. Modha, "CAR: Clock with Adaptive Replacement," Proc. Third USENIX Conf. File and Storage Technologies, Mar. 2004.
[3] Z. Chen, Y. Zhang, Y. Zhou, H. Scott, and B. Schiefer, "Empirical Evaluation of Multi-Level Buffer Cache Collaboration for Storage Systems," Proc. ACM SIGMETRICS Int'l Conf. Measurement and Modeling of Computer Systems, June 2005.
[4] Z. Chen, Y. Zhou, and K. Li, "Eviction Based Cache Placement for Storage Caches," Proc. USENIX Ann. Technical Conf., June 2003.
[5] P. Denning, "The Working Set Model for Program Behavior," Comm. ACM, vol. 11, no. 5, pp. 323-333, 1968.
[6] B. Gill, "On Multi-Level Exclusive Caching: Offline Optimality and Why Promotions are Better Than Demotions," Proc. Sixth USENIX Conf. File and Storage Technologies, Feb. 2008.
[7] B. Gill, Systems and Methods for Multi-Level Exclusive Caching Using Hints, US Patent 7761664 B2, July 2010.
[8] B. Gill, M. Ko, B. Debnath, and W. Belluomini, "STOW: A spatially and Temporally Optimized Write Caching Algorithm," Proc. USENIX Ann. Technical Conf., June 2009.
[9] B. Gill and D. Modha, "SARC: Sequential Prefetching in Adaptive Replacement Cache," Proc. USENIX Ann. Technical Conf., Apr. 2005.
[10] B. Gill and D. Modha, "WOW: Wise Ordering for Writes-Combining Spatial and Temporal Locality in Non-Volatile Caches," Proc. Fourth USENIX Conf. File and Storage Technologies, Dec. 2005.
[11] C. Gniady, A. Butt, and Y. Hu, "Program-Counter-Based Pattern Classification in Buffer Caching," Proc. Sixth USENIX Symp. Operating Systems Design and Implementation, Dec. 2004.
[12] S. Jiang, F. Chen, and X. Zhang, "CLOCK-Pro: An Effective Improvement of the Clock Replacement," Proc. USENIX Ann. Technical Conf., Apr. 2005.
[13] S. Jiang, X. Ding, F. Chen, E. Tan, and X. Zhang, "DULO: An Effective Buffer Cache Management Scheme to Exploit Both Temporal and Spatial Locality," Proc. Fourth USENIX Conf. File and Storage Technologies, Dec. 2005.
[14] S. Jiang and X. Zhang, "LIRS: An Efficient Low Inter-Reference Recency Set Replacement Policy to Improve Buffer Cache Performance," Proc. ACM SIGMETRICS Int'l Conf. Measurement and Modeling of Computer Systems, June 2002.
[15] S. Jiang and X. Zhang, "ULC: A File Block Placement and Replacement Protocol to Effectively Exploit Hierarchical Locality in Multi-Level Buffer Caches," Proc. 24th Int'l Conf. Distributed Computing Systems, Mar. 2004.
[16] T. Johnson and D. Shasha, "2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm," Proc. 20th Int'l Conf. Very Large Databases, Sept. 1994.
[17] J. Kim, J. Choi, J. Kim, S. Noh, S. Min, Y. Cho, and C. Kim, "A Low-Overhead High-Performance Unified Buffer Management Scheme That Exploits Sequential and Looping References," Proc. Fourth USENIX Symp. Operating Systems Design and Implementation, Oct. 2000.
[18] B. Lampson, "Hints for Computer System Design," Proc. Ninth ACM Symp. Operating System Principles, Oct. 1983.
[19] D. Lee, J. Choi, J. Kim, S. Noh, S. Min, Y. Cho, and C. Kim, "LRFU: A Spectrum Of Policies That Subsumes the Least Recently Used and Least Frequently Used Polices," IEEE Trans. Computers, vol. 50, no. 12, pp. 1352-1361, Dec. 2001.
[20] X. Li, A. Aboulnaga, K. Salem, A. Sachedina, and S. Gao, "Second-Tier Cache Management Using Write Hints," Proc. Fourth USENIX Conf. File and Storage Technologies, Dec. 2005.
[21] X. Liu, A. Aboulnaga, K. Salem, and X. Li, "CLIC: Client-Informed Caching for Storage Servers," Proc. Seventh USENIX Conf. File and Storage Technologies, Feb. 2009.
[22] N. Megiddo and D. Modha, "ARC: A Self-Tuning, Low Overhead Replacement Cache," Proc. Second USENIX Conf. File and Storage Technologies, Mar. 2003.
[23] E. O'Neil, P. O'Neil, and G. Weikum, "The LRU-K Page Replacement Algorithm for Database Disk Buffering," Proc. ACM SIGMOD Int'l Conf. Management of Data, May 1993.
[24] E. O'Neil, P. O'Neil, and G. Weikum, "An Optimality Proof of the LRU-K Page Replacement Algorithm," J. ACM, vol. 46, no. 1, pp. 92-112, 1999.
[25] L. Ou, X. He, M. Kosa, and S. Scott, "A Unified Multiple-Level Cache for High Performance Storage Systems," Proc. IEEE 13th Int'l Symp. Modeling, Analysis, and Simulation of Computer and Telecomm. Systems, Sept. 2005.
[26] R. Patterson, G. Gibson, E. Ginting, D. Stodolsky, and J. Zelenka, "Informed Prefetching and Caching," Proc. 15th ACM Symp. Operating System Principles, Dec. 1995.
[27] J. Robinson and M. Devarakonda, "Data Cache Management Using Frequency-Based Replacement," Proc. ACM SIGMETRICS Conf. Measurement and Modeling of Computer Systems, May 1990.
[28] P. Sarkar and J. Hartman, "Efficient Cooperative Caching Using Hints," Proc. Second USENIX Symp. Operating Systems Design and Implementation, Oct. 1996.
[29] P. Sarkar and J. Hartman, "Hint-Based Cooperative Caching," ACM Trans. Computer Systems, vol. 18, no. 4, pp. 387-419, 2000.
[30] T. Wong and J. Wilkes, "My Cache or Yours? Making Storage More Exclusive," Proc. USENIX Ann. Technical Conf., June 2002.
[31] C. Wu, X. He, Q. Cao, and C. Xie, "Hint-K: An Efficient Multi-Level Cache Using K-Step Hints," Proc. 39th Int'l Conf. Parallel Processing, Sept. 2010.
[32] G. Yadgar, M. Factor, K. Li, and A. Schuster, "MC$^2$ : Multiple Clients on a Multilevel Cache," Proc. 28th Int'l Conf. Distributed Computing Systems, June 2008.
[33] G. Yadgar, M. Factor, K. Li, and A. Schuster, "Management of Multilevel, Multiclient Cache Hierarchies with Application Hints," ACM Trans. Computer Systems, vol. 29, no. 2, Article 5, 2011.
[34] G. Yadgar, M. Factor, and A. Schuster, "Karma: Know-it-All Replacement for a Multilevel Cache," Proc. Fifth USENIX Conf. File and Storage Technologies, Feb. 2007.
[35] F. Zhou, B. Behren, and E. Brewer, "AMP: Program Context Specific Buffer Caching," Proc. USENIX Ann. Technical Conf., Apr. 2005.
[36] Y. Zhou, Z. Chen, and K. Li, "Second-Level Buffer Cache Management," IEEE Trans. Parallel and Distributed Systems, vol. 15, no. 6, pp. 505-519, June 2004.
[37] Y. Zhou, J. Philbin, and K. Li, "The Multi-Queue Replacement Algorithm for Second Level Buffer Caches," Proc. USENIX Ann. Technical Conf., June 2001.
[38] Y. Zhu and H. Jiang, "RACE: A Robust Adaptive Caching Strategy for Buffer Cache," IEEE Trans. Computers, vol. 57, no. 1, pp. 25-40, Nov. 2007.
94 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool