Engineering Efficient Paging Algorithms

In the field of online algorithms, paging is a well-studied problem. LRU is a simple paging algorithm that incurs few cache misses and supports efficient implementations. Algorithms outperforming LRU in terms of cache misses exist but are in general more complex and thus not automatically better, since their increased runtime might annihilate the gains in cache misses. In this article, we focus on efficient implementations for the OnOPT class described in Moruz and Negoescu [2012], particularly on an algorithm in this class, denoted RDM, that was shown to typically incur fewer misses than LRU. We provide experimental evidence on a wide range of cache traces showing that our implementation of RDM is competitive to LRU with respect to runtime. In a scenario incurring realistic time penalties for cache misses, we show that our implementation consistently outperforms LRU, even if the runtime of LRU is set to zero.

[1]  Yannis Smaragdakis,et al.  Flexible reference trace reduction for VM simulations , 2003, TOMC.

[2]  Christos H. Papadimitriou,et al.  Beyond competitive analysis [on-line algorithms] , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[3]  Lyle A. McGeoch,et al.  A strongly competitive randomized paging algorithm , 1991, Algorithmica.

[4]  Allan Borodin,et al.  Competitive paging with locality of reference , 1991, STOC '91.

[5]  Anna R. Karlin,et al.  Competitive snoopy caching , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[6]  Kaushik Velusamy,et al.  Modern Operating Systems , 2015 .

[7]  Neal Young,et al.  The K-Server Dual and Loose Competitiveness for Paging , 1991, On-Line Algorithms.

[8]  Anna R. Karlin,et al.  Competitive snoopy caching , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[9]  Rüdiger Reischuk,et al.  Knowledge State Algorithms , 2011, Algorithmica.

[10]  Joan Boyar,et al.  The relative worst order ratio applied to paging , 2005, SODA '05.

[11]  Amos Fiat,et al.  Competitive Paging Algorithms , 1991, J. Algorithms.

[12]  Gabriel Moruz,et al.  Outperforming LRU via competitive analysis on parametrized inputs for paging , 2012, SODA.

[13]  Gerth Stølting Brodal,et al.  OnlineMin: A Fast Strongly Competitive Randomized Paging Algorithm , 2011, Theory of Computing Systems.

[14]  Amos Fiat,et al.  Experimental Studies of Access Graph Based Heuristics: Beating the LRU Standard? , 1997, SODA.

[15]  Laszlo A. Belady,et al.  A Study of Replacement Algorithms for Virtual-Storage Computer , 1966, IBM Syst. J..

[16]  Marek Chrobak,et al.  Competitive analysis of randomized paging algorithms , 2000, Theor. Comput. Sci..

[17]  Andrew S. Tanenbaum,et al.  Modern Operating Systems: Jumpstart Sampling Edition , 2008 .

[18]  Luca Faust,et al.  Modern Operating Systems , 2016 .

[19]  Neal E. Young,et al.  Thek-server dual and loose competitiveness for paging , 1994, Algorithmica.

[20]  Robert E. Tarjan,et al.  Amortized efficiency of list update and paging rules , 1985, CACM.