Transient and Steady-state Regime of a Family of List-based Cache Replacement Algorithms
Nicolas Gast1, Benny Van Houdt2 Sigmetrics 2015, Portland, Oregon
1Inria 2University of Antwerp Nicolas Gast – 1 / 26
Transient and Steady-state Regime of a Family of List-based Cache - - PowerPoint PPT Presentation
Transient and Steady-state Regime of a Family of List-based Cache Replacement Algorithms Nicolas Gast 1 , Benny Van Houdt 2 Sigmetrics 2015, Portland, Oregon 1 Inria 2 University of Antwerp Nicolas Gast 1 / 26 Caches are everywhere
1Inria 2University of Antwerp Nicolas Gast – 1 / 26
Nicolas Gast – 2 / 26
Nicolas Gast – 3 / 26
Nicolas Gast – 3 / 26
Nicolas Gast – 3 / 26
Nicolas Gast – 4 / 26
◮ FIFO and LRU: [Dan and Towsley 1990, Martina at al. 14, Fofack at
◮ LRU: Che approximation [Che, 2002, Fricker et al. 12] Nicolas Gast – 4 / 26
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
approx 1 list (200) approx 4 lists (50/50/50/50)
Nicolas Gast – 5 / 26
1 We can compute in polynomial time the steady-state distribution
◮ Disprove old conjectures.
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
approx 1 list (200) approx 4 lists (50/50/50/50)
Nicolas Gast – 5 / 26
1 We can compute in polynomial time the steady-state distribution
◮ Disprove old conjectures. 2 We develop a mean-field approximation and show that it is accurate ◮ Fast approximation of the steady-state distribution. ◮ We can characterize the transient behavior:
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
approx 1 list (200) approx 4 lists (50/50/50/50)
Nicolas Gast – 5 / 26
1 We can compute in polynomial time the steady-state distribution
◮ Disprove old conjectures. 2 We develop a mean-field approximation and show that it is accurate ◮ Fast approximation of the steady-state distribution. ◮ We can characterize the transient behavior:
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
approx 1 list (200) approx 4 lists (50/50/50/50)
3 We provide guidelines of how to tune the parameters by using IRM
Nicolas Gast – 5 / 26
Nicolas Gast – 6 / 26
Nicolas Gast – 7 / 26
Nicolas Gast – 8 / 26
Nicolas Gast – 8 / 26
Nicolas Gast – 8 / 26
Nicolas Gast – 9 / 26
Nicolas Gast – 10 / 26
Nicolas Gast – 11 / 26
Nicolas Gast – 11 / 26
Comput., 7:288-296, 1978. Nicolas Gast – 12 / 26
300 400 500 600 700 800 900 1000 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55
h = ∞ h = 2, m2 = m − 1 h = 3, m3 = m − 2 h = 5, m5 = m − 4 h = 10, m10 = m − 9 Lower bounds
Nicolas Gast – 13 / 26
6conjectured in O. I. Aven, E. G. Coffman, Jr., and Y. A. Kogan. Stochastic Analysis of Computer Storage. Kluwer Academic Publishers, Norwell, MA, USA, 1987. Nicolas Gast – 14 / 26
6conjectured in O. I. Aven, E. G. Coffman, Jr., and Y. A. Kogan. Stochastic Analysis of Computer Storage. Kluwer Academic Publishers, Norwell, MA, USA, 1987. Nicolas Gast – 14 / 26
Nicolas Gast – 15 / 26
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
Nicolas Gast – 16 / 26
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
approx 1 list (200) approx 4 lists (50/50/50/50)
Nicolas Gast – 16 / 26
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
Nicolas Gast – 16 / 26
Nicolas Gast – 17 / 26
Nicolas Gast – 17 / 26
2000 4000 6000 8000 10000 number of requests 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 0.40 probability in cache
1 list (200) 4 lists (50/50/50/50)
Nicolas Gast – 18 / 26
Nicolas Gast – 19 / 26
Nicolas Gast – 20 / 26
10
3
10
4
10
5
0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4
m = 200, ODE m = 200, simul m = (100,100), ODE m = (100,100), simul m = (50,150), ODE m = (50,150), simul m = (20,180), ODE m = (20,180), simul Nicolas Gast – 21 / 26
10
3
10
4
10
5
0.1 0.15 0.2 0.25 0.3 0.35 0.4
m = (40,160), ODE m = (40,160), simul m = (40,40,120), ODE m = (40,40,120) simul m = (40,40,40,80), ODE m = (40,40,40,80), simul
Nicolas Gast – 22 / 26
1000 2000 3000 4000 5000 0.27 0.28 0.29 0.3 0.31 0.32 0.33
FIFO(m): 2 lists FIFO(m): 3 lists FIFO(m): 5 lists LRU(m): 2 lists LRU(m): 3 lists LRU(m): 5 lists
models, and implications. Comput. Netw., 53(4):501-514, Mar. 2009. Nicolas Gast – 23 / 26
Nicolas Gast – 24 / 26
◮ provides a unified framework and disproves old conjectures. ◮ ODE approximation
Nicolas Gast – 25 / 26
Nicolas Gast – 26 / 26