Skip to main content
Log in

Dual queues cache replacement algorithm based on sequentiality detection

  • Research Paper
  • Published:
Science China Information Sciences Aims and scope Submit manuscript

Abstract

Caching is one of the most effective and commonly used mechanisms to improve performance of storage servers. Replacement policies play a critical role in the cache design due to the limited cache capacity. Recent researchers devote themselves to achieve high hit ratios, but rarely pay attention to reducing miss penalty during the design of a replacement policy. To address the issue, this paper presents a novel algorithm, called dual queues cache replacement algorithm based on sequentiality detection, which prefers to drop sequential blocks and protect random blocks. The buffer cache can serve more subsequent random read requests, so the cache miss penalty could be decreased significantly. Moreover, the algorithm makes use of two queues separately maintaining new blocks and old blocks to avoid the degradation of hit ratios. Our trace-driven simulation results show that it performs better than LRU and ARC for a wide range of cache sizes and workloads.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Hu Y, Nightingale T, Yang Q. Rapid-cache-a reliable and inexpensive write cache for high performance storage systems. IEEE Trans Parall Distrib Syst, 2002, 13: 290–307

    Article  Google Scholar 

  2. Muntz D, Honeyman P. Multi-level caching in distributed file systems-or-your cache ain’t nuthin’ but trash. In: Proceedings of the Winter 1992 USENIX Conference. San Francisco, 1992. 305–313

  3. Adelsonveslkii G M, Landisand Y M. An algorithm for the organization of Information. Doklady Akademi Nauk, 1962, 16: 263–266

    Google Scholar 

  4. Aho A V, Denning P J, Ullman J D. Principles of optimal page replacement. J ACM, 1971, 18: 80–93

    Article  MATH  MathSciNet  Google Scholar 

  5. O’Neil E J, O’Neil P E, Weikum G. The LRU-K page replacement algorithm for database disk buffering. In: Proceedings of the 1993 ACM SIGMOD International Conference. Washington, 1993. 297–306

  6. Lee D, Choi J, Kim J H, et al. LRFU: a spectrum of policies that subsumes the least recently used and least frequently used policies. IEEE Trans Comput, 2001, 50: 1352–1360

    Article  MathSciNet  Google Scholar 

  7. Belady L. A study of replacement algorithms for a virtual-storage computer. IBM Syst J, 1966, 5: 78–101

    Article  Google Scholar 

  8. Zhao Y J, Xiao N. Bargain cache: using file-system metadata to reduce the cache miss penalty. In: Proceedings of the 9th PDCAT Conference. Dunedin, 2008. 177–184

  9. Chu R, Xiao N, Zhuang Y Z, et al. A distributed paging RAM grid system for wide-area memory sharing. In: Proceedings of the 20th IPDPS Conference. Rhodes Island, 2006. 10–17

  10. Mattson R L, Gecsei J, Slutz D R, et al. Evaluation techniques for storage hierarchies. IBM Syst J, 1970, 9: 78–117

    Article  Google Scholar 

  11. Megiddo N, Modha D S. ARC: a self-tuning, low overhead replacement cache. In: Proceedings of the 2nd FAST Conference. San Francisco, 2003. 115–130

  12. Johnson T, Shasha D. 2Q: a low overhead high performance buffer management replacement algorithm. In: Proceedings of the 20th VLDB Conference. Santiago de Chile, 1994. 297–306

  13. Zhou Y Y, Philbin J F. The multi-queue replacement algorithm for second level buffer caches. In: Proceedings of USENIX Annual Technology Conference. Boston, 2001. 91–104

  14. Jiang S, Zhang X D. LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance. In: Proceedings of the ACM SIGMETRICS Conference. Marina Del Rey, 2002. 31–42

  15. Jiang S, Zhang X D. ULC: a file block placement and replacement protocol to effectively exploit hierarchical locality in multi-level buffer caches. In: Proceedings of the 24th ICDCS Conference. Tokyo, 2004. 168–177

  16. Factor M, Schuster A, Yadgar G. Karma: know-it-all replacement for a multilevel cache. In: Proceedings of the 5th FAST Conference. San Jose, 2007. 169–184

  17. Wong T M, Wilkes J. My cache or yours? Making storage more exclusive. In: Proceedings of the USENIX Annual Technical Conference. Monterey, 2002. 161–175

  18. Gill B S. On multi-level exclusive caching: offline optimality and why promotions are better than demotions. In: Proceedings of the 6th FAST Conference. San Jose, 2008. 49–65

  19. Liang S, Jiang S, Zhang X D. STEP: sequentiality and thrashing detection based prefetching to improve performance of networked storage servers. In: Proceedings of the 27th ICDCS Conference. Toronto, 2007. 550–559

  20. Gill B S, Modha D S. SARC: sequential prefetching in adaptive replacement cache. In: Proceedings of the USENIX Annual Technical Conference. Anaheim, 2005. 293–308

Download references

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Nong Xiao or YingJie Zhao.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Xiao, N., Zhao, Y., Liu, F. et al. Dual queues cache replacement algorithm based on sequentiality detection. Sci. China Inf. Sci. 55, 191–199 (2012). https://doi.org/10.1007/s11432-011-4213-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11432-011-4213-z

Keywords

Navigation