Asymptotically Exact TTL-Approximations of the Cache Replacement Algorithms LRU(m) and h-LRU
Nicolas Gast1, Benny Van Houdt2
ITC 2016
September 13-15, W¨ urzburg, Germany
1Inria 2University of Antwerp Nicolas Gast – 1 / 24
Asymptotically Exact TTL-Approximations of the Cache Replacement - - PowerPoint PPT Presentation
Asymptotically Exact TTL-Approximations of the Cache Replacement Algorithms LRU(m) and h-LRU Nicolas Gast 1 , Benny Van Houdt 2 ITC 2016 September 13-15, W urzburg, Germany 1 Inria 2 University of Antwerp Nicolas Gast 1 / 24 Caches are
ITC 2016
1Inria 2University of Antwerp Nicolas Gast – 1 / 24
Nicolas Gast – 2 / 24
◮ Cache-replacement policies3 (LRU, RANDOM), ◮ TTL-caches4.
◮ LFU and variants5 ◮ Optimal policies for network of caches6 3started with [King 1971, Gelenbe 1973] 4e.g., Fofack e al 2013, Berger et al. 2014 5Optimizing TTL Caches under Heavy-Tailed Demands (Ferragut et al. 2016) 6Adaptive Caching Networks with Optimality Guarantees (Ioannidis and Yeh, 2016) Nicolas Gast – 3 / 24
◮ Cache-replacement policies3 (LRU, RANDOM), ◮ TTL-caches4.
◮ LFU and variants5 ◮ Optimal policies for network of caches6 3started with [King 1971, Gelenbe 1973] 4e.g., Fofack e al 2013, Berger et al. 2014 5Optimizing TTL Caches under Heavy-Tailed Demands (Ferragut et al. 2016) 6Adaptive Caching Networks with Optimality Guarantees (Ioannidis and Yeh, 2016) Nicolas Gast – 3 / 24
1
2
3
4
5
Nicolas Gast – 4 / 24
1
2
3
4
5
Nicolas Gast – 5 / 24
Nicolas Gast – 6 / 24
Nicolas Gast – 6 / 24
Nicolas Gast – 6 / 24
Nicolas Gast – 6 / 24
Nicolas Gast – 6 / 24
Nicolas Gast – 6 / 24
Nicolas Gast – 6 / 24
Nicolas Gast – 6 / 24
7Variant of RAND(
m) of [G, Van Houdt 2015]
8Introduced as k-LRU in [Martina et al. 2014] Nicolas Gast – 7 / 24
7Variant of RAND(
m) of [G, Van Houdt 2015]
8Introduced as k-LRU in [Martina et al. 2014] Nicolas Gast – 7 / 24
7Variant of RAND(
m) of [G, Van Houdt 2015]
8Introduced as k-LRU in [Martina et al. 2014] Nicolas Gast – 7 / 24
7Variant of RAND(
m) of [G, Van Houdt 2015]
8Introduced as k-LRU in [Martina et al. 2014] Nicolas Gast – 7 / 24
7Variant of RAND(
m) of [G, Van Houdt 2015]
8Introduced as k-LRU in [Martina et al. 2014] Nicolas Gast – 7 / 24
7Variant of RAND(
m) of [G, Van Houdt 2015]
8Introduced as k-LRU in [Martina et al. 2014] Nicolas Gast – 7 / 24
7Variant of RAND(
m) of [G, Van Houdt 2015]
8Introduced as k-LRU in [Martina et al. 2014] Nicolas Gast – 7 / 24
7Variant of RAND(
m) of [G, Van Houdt 2015]
8Introduced as k-LRU in [Martina et al. 2014] Nicolas Gast – 7 / 24
1
2
3
4
5
Nicolas Gast – 8 / 24
9(RAND(
m) in [G, Van Houdt, 2015]) for which product form solution exist.
10heuristic for h-LRU [Martina et al. 2014] Nicolas Gast – 9 / 24
9(RAND(
m) in [G, Van Houdt, 2015]) for which product form solution exist.
10heuristic for h-LRU [Martina et al. 2014] Nicolas Gast – 9 / 24
Nicolas Gast – 10 / 24
Nicolas Gast – 10 / 24
Nicolas Gast – 10 / 24
Nicolas Gast – 11 / 24
ℓ
Nicolas Gast – 11 / 24
Nicolas Gast – 12 / 24
1
2
3
Nicolas Gast – 12 / 24
1
2
3
4
5
Nicolas Gast – 13 / 24
Nicolas Gast – 14 / 24
Nicolas Gast – 14 / 24
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 – 15 / 24
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)
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 – 15 / 24
Nicolas Gast – 16 / 24
1
2
3
4
5
Nicolas Gast – 17 / 24
aThis is not true in full generality, even for IRM. The same counter-example
as in [G., Van Houdt 2015] works.
Nicolas Gast – 18 / 24
Nicolas Gast – 19 / 24
50 100 150 200 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Cache Size Hit Probability
Zipf α=0.8, n = 1000, correlation in IRTs
Hypo2 LRU Hypo2 2−LRU Hypo2 LRM(m,m) Hypo10 LRU Hypo10 2−LRU Hypo10 LRU(m,m) Nicolas Gast – 19 / 24
0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.8 0.82 0.84 0.86 0.88 0.9 0.92
hit probability Lag−1 autocorrelation ρ1
Zipf α=0.8, n = 1000, m = 100
LRU 2−LRU LRU(m,m) LRU(m/2,m/2) Nicolas Gast – 20 / 24
0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.8 0.82 0.84 0.86 0.88 0.9 0.92
hit probability Lag−1 autocorrelation ρ1
Zipf α=0.8, n = 1000, m = 100
LRU 2−LRU LRU(m,m) LRU(m/2,m/2) Nicolas Gast – 20 / 24
11[Bianchi et al. 2013] Nicolas Gast – 21 / 24
64 128 256 512 1024 2048 4096 8192 16384 32768 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6
Cache Size m hit probability / LRU hit probability
LRU LRU(m/2,m/2) LRU(m/3,m/3,m/3) LRU(m,m) LRU(m,m/2,m/2)
11[Bianchi et al. 2013] Nicolas Gast – 21 / 24
1
2
3
4
5
Nicolas Gast – 22 / 24
◮ New or improved approximations ◮ Exact for large cache
◮ Prove equivalence between TTL and cache replacement policies ◮ Show that these approximation work for MAP
◮ Comparison of LRU(m) and h-LRU. ◮ Our results can be used to tune such algorithms. Nicolas Gast – 23 / 24
Nicolas Gast – 24 / 24
Nicolas Gast – 1 / 1