# Scope and Accuracy of Analytic and Approximate Results for FIFO, Clock-Based and LRU Caching Performance

^{1}

^{2}

^{3}

^{4}

^{*}

## Abstract

**:**

## 1. Introduction: Basic Caching Methods and Their Evaluations

- product form solutions are extended to clock-based methods and combinations of those methods, with FIFO and RANDOM for single and multilevel caches,
- the scope of analytical solutions is clarified regarding scalable computation as well as the solutions’ applicability for data of different sizes, and
- quantitative evaluations of the accuracy of approximations identify the worst cases and error bound extensions for varying data sizes in caches.

## 2. Markov Analysis Results for Basic Caching Strategies

_{1}, …, O

_{N}, which are referenced with probabilities p

_{1}, …, p

_{N}in each request. The IRM request pattern with the Zipf-distributed popularity of the data has been confirmed manifold as a realistic model for web request traces [17,31,32]. Moderate correlation among requests and changes in the working set of relevant data are also relevant [31,32,33].

#### 2.1. Common Hit Ratio Analysis of FIFO, RANDOM and Clock-Based Caching

_{FIFO}(O

_{k}

_{1}, ∙∙∙, O

_{kM}) to find the objects O

_{k}

_{1}, ∙∙∙, O

_{kM}in positions 1, …, M of a FIFO cache is given by

_{FIFO}(O

_{k}

_{1}, ∙∙∙, O

_{kM}) = c p

_{k}

_{1}∙ ∙∙∙ ∙ p

_{kM}(∀ j ≠ l: O

_{kj}≠ O

_{kl}; M: cache size; c: norm. constant).

_{CpR}(O

_{k}

_{1}, ∙∙∙, O

_{kM}) of CpR cache content follow the same product form as for FIFO and RANDOM:

_{CpR}(O

_{k}

_{1}, ∙∙∙, O

_{kM}) = p

_{FIFO}(O

_{k}

_{1}, ∙∙∙, O

_{kM}) = p

_{RANDOM}(O

_{k}

_{1}, ∙∙∙, O

_{kM}) = c p

_{k}

_{1}∙ ∙∙∙ ∙p

_{kM}

_{k}

_{1}, ∙∙∙, O

_{kM}.

_{k}

_{2}, ∙∙∙, O

_{kM}, O

_{k}

_{1}to O

_{k}

_{1}, ∙∙∙, O

_{kM}with a corresponding transition probability p

_{k}

_{1}+ ∙∙∙ + p

_{kM}. Otherwise, a cache miss leads to O

_{k}

_{1}, ∙∙∙, O

_{kM}if O

_{k}

_{1}is requested as an external object, i.e., with transition probability p

_{k}

_{1}from a previous content state O

_{k}

_{2}, ∙∙∙, O

_{kM}, O

_{l}. We obtain the following equilibrium equations corresponding to one-step transitions per request to O

_{k}

_{1}, ∙∙∙, O

_{kM}:

_{k}

_{1}, …, O

_{kM}to each other with nonzero probability. The underlying IRM Markov processes for the RANDOM and CpR strategies are generally ergodic if ∀k: p

_{k}> 0, whereas FIFO has a nonergodic exception if and only if N = M + 1. These results are covered by general criteria for ergodic caching networks derived by Rosensweig et al. [34].

#### 2.2. Scalable Iterative Evaluation of the Product Form Solution

_{n}

_{+1}with initialization s(0, n) = p

_{1}+…+ p

_{n};

^{−100}, 10

^{−1000}, etc. and thus below the usual CPU number representation. In order to improve numerical accuracy for large m, n, we sort the objects according to their request probabilities p

_{1}≤ p

_{2}≤ … ≤ p

_{n}and start summations with the smallest values. Moreover, we add a factor 10

^{−20k}(k ∈ N) to the real number representations of s(m, n) and h(m, n), such that the representation of y in the range (10

^{−20(ky+1)}, 10

^{−20ky}) has an integer component k

_{y}∈ N and a real component r

_{y}∈ (10

^{−20}, 1), such that y = r

_{y}· 10

^{−20ky}. Thereafter, 10

^{−1000}is included for (r

_{y}, k

_{y}) = (1, 50), etc. In this way, we finally achieve an accurate and scalable computation of the product form solution, as confirmed by a comparison with the simulation results of numerous examples, including the results in Figure 2 and Table 2.

## 3. Approximation of the IRM Hit Ratio for FIFO

_{k}spends inside the cache (T

_{InCache}) and outside (T

_{Extern,k}), which are measured by the number of requests in both time spans. For independent requests, the external phase T

_{Extern,k}is geometrically distributed with mean ${\overline{T}}_{Extern,k}$ = 1/p

_{k}until the next request to O

_{k}.

_{k}: ${h}_{k}^{FIFO}={p}_{k}{\overline{T}}_{InCache}/({\overline{T}}_{InCache}+{\overline{T}}_{Extern,k})$. In total,

#### 3.1. Precision of the FIFO Approximation for Zipf-Distributed IRM Requests

_{k}= α k

^{−β}for k = 1, …, N; α = 1/Σ

_{k}k

^{−β}. Zipf-distributed request pattern has been reported manifold in content distribution on the Internet for the popularity of files, videos, etc. [31,32,33]. Figure 2 shows results for β = 1 and for varying object catalogue sizes N = 10, …, 10

^{6}, with cache sizes M over the entire range [1, …, N]. The largest deviations of up to 1.7% are encountered for the smallest M, N. For large N, M, the deviations are often tiny, going down to the range of 10

^{−6}–10

^{−7}, where asymptotical exactness can be expected due to a statistical multiplexing effect. As a general trend, we experience the deviations to decrease with the variance of the popularity distribution. Thus, for independent Zipf-distributed requests, the deviations are increasingwith the shape parameter β and decreasing with M, N.

**Figure 2.**Deviations of FIFO approximations of Equations (4) and (5) from exact results of Equations (2) and (3).

#### 3.2. Maximum Error Cases of the FIFO Approximation for Small Cache Size M

_{k}= i

_{k}/50 with integers i

_{k}for k ≤ N ≤ 50. The approximation of Equations (4) and (5) is compared to the product form analysis of Equation (2) for all those distributions and for all cache sizes M < N, yielding over a million deviation results. The computation required 2 days on a usual PC, but an exponential increase in the number of distributions will soon impede extensions to a finer raster of 1/51, 1/52, etc.

_{1}= p

_{2}= ∙∙∙ = p

_{n}= p/n; p

_{n+}

_{1}= ∙∙∙ = p

_{N}= (1 − p)/(N − n) → 0 for N → ∞,

_{m}that we find m out of n popular objects in the cache for m = 0, …, min(n, M). In this way, we obtain the exact hit ratio result ${h}_{IRM}^{FIFO}$ = Σ

_{m}q

_{m}·m·p/n, especially for the format (6). We derive q

_{m}by collecting all the corresponding components from Equation (2):

_{m+}

_{1}/q

_{m}= (n − m)(M − m)p/[n(m + 1)(1 − p)],

_{0},···, q

_{M}and finally of ${h}_{IRM}^{FIFO}$.

_{1}= ∙∙∙ = p

_{n}= p/n of the extreme format (6). The approximation is exact for uniform distributions, as confirmed by substituting ${h}_{IRM}^{FIFO}$ = M/N and p

_{k}= 1/N into Equation (5). Moreover, we observe without proof that the errors are always negative, i.e., the approximation of Equations (4) and (5) seems to establish a lower bound. The main conclusions from Table 2 on the accuracy of the FIFO approximation are as follows:

- Considerable errors of up to 16.5% are encountered for small cache size M.
- They are reduced towards a fair accuracy with errors below 3% for M ≥ 10.

Maximum Deviations of the FIFO, RANDOM & CpR Approximation for Cache Size M: Worst Cases Are Request Distributions of the Type (6) with n = M | ||||
---|---|---|---|---|

M | p_{1}= ∙∙∙ = p_{n} (n = M) | Exact Result ${h}_{IRM}^{FIFO}$ of Equation (2) | Approximation of Equations (4) and (5) | Maximum Deviation |

1 | 0.8838 | 78.11% | 61.62% | –16.49% |

2 | 0.4705 | 84.13% | 73.30% | –10.83% |

3 | 0.3213 | 87.49% | 79.45% | –8.04% |

4 | 0.2440 | 89.75% | 83.37% | –6.38% |

5 | 0.1965 | 91.35% | 86.07% | –5.28% |

6 | 0.1645 | 92.51% | 88.00% | –4.51% |

7 | 0.1414 | 93.41% | 89.48% | –3.93% |

8 | 0.1240 | 94.10% | 90.62% | –3.48% |

9 | 0.1104 | 94.69% | 91.57% | –3.13% |

10 | 0.0995 | 95.14% | 92.30% | –2.84% |

## 4. Approximations of the LRU Hit Ratio

- ${\overline{R}}_{LRU}$ is approximated by the unique solution of the equation M =$\sum}_{j=1}^{N}1-{e}^{-{p}_{j}{\overline{R}}_{LRU}$.

- Thereafter, the LRU hit ratio is obtained per object (h
_{Che}(O_{j})) and in total (h_{Che}):

^{−pj}with 1 – p :

_{k}= i

_{k}/50 for integers i

_{k}(k ≤ N ≤ 50). The approximations h

_{Fagin}and h

_{Che}are compared with the analysis results via Equation (12) and/or simulations for all cache sizes M < N. The study once more strongly suggests the format (6) for distributions with maximum errors of ∆h

_{Fagin}= h

_{Fagin}− h

_{LRU}and ∆h

_{Che}= h

_{Che}− h

_{LRU}.

_{Fagin}and ∆h

_{Che}for M ≤ 10, similar to Table 2 for the FIFO deviations. We checked both parameters n, p of Equation (6) for extreme cases and adapted n, p for each M to maximize ∆h

_{Fagin}and ∆h

_{Che}[21].

- The maximum deviations ∆h
_{Che}of Che’s approximation are decreasing with the cache size M from 8.25% for M = 1 down to less than 1% for M ≥ 10. - The maximum deviations ∆h
_{Fagin}of Fagin’s approximation are decreasing with the cache size M from 5.2% for M = 2 down to less than 1.3% for M ≥ 10.

_{Che}|) ≈ 2.97% for M = 3. The top-10 error cases out of more than 2 × 10

^{5}popularity distributions in the 2% raster are shown in Figure 4. These cases are all in a close surrounding of the extreme case of the type (6), which is shown at the bottom of Figure 4. The top-100 error cases of the list are again in an extended surrounding of the same extreme case. A similar behaviour is observed for all maximum error cases for M = 1, …, 10 in Table 2 and Table 3.

## 5. Extended Product Form Solution for Multisegment Caches

_{1}, …, L

_{K}. A requested object on cache level L

_{j}(j ≥ 2) is then forwarded to level L

_{j}

_{−1}in exchange for an evicted object moving from L

_{j}

_{−1}to L

_{j}, as illustrated in Figure 5. Cache segmentations can improve the hit ratio by collecting the most popular objects on high cache levels on account of slower adaptation to content changes. Many proposed caching strategies make use of two or more segments, such as ARC [18], segmented LRU [1], k-LRU [38], LRU(m) [12,38], half rank exchange [11], FB-FIFO [39], transposition relocation or CLIMB [7,40]. Distributed architectures also include spreading multilevel storage structures over several cache servers [41].

_{1}. The mixing time is estimated [12] for adaptation to a changing request pattern. An extended product form solution is derived [20] for FIFO(K) and RANDOM(K) strategies when either FIFO or RANDOM is used on all levels. This solution extends to clock per request (CpR) and all variants, which were already included in the single-segment product form of Equations (1) and (2). The solution still remains valid when different strategy variants of the set {FIFO, RANDOM, CpR} are applied on different levels.

_{1}, …, k

_{m}, k

_{m+}

_{1}, …, k

_{m}

_{+n}) denote the steady state IRM probability for content ${O}_{{k}_{1}},\dots ,{O}_{{k}_{m+n}}$ in the cache, where the first cache level ranges from positions 1, …, m, and the second from m + 1, …, m + n. Thereafter, we obtain

_{k}

_{j}in position m + i on the second level with transition probability pkm+i/n. We obtain (∀ j ≠ l: k

_{j}≠ k

_{l})

_{j}≠ k

_{l}):

_{j}= 2

^{j}and M = 2

^{K+}

^{1}− 1. As an extreme case, Climb [7,41] is covered by the multilevel LRU solutions [12,20] and by Equation (10), where ∀j: l

_{j}= 1. Climb is denoted as transposition relocation in a study by McCabe [7], who compared Climb with LRU in one of the first Markov analysis approaches for caching. Equation (10) still applies when the cache size covers k ≤ K levels, such that M = l

_{1}+ ··· + l

_{k}, and the K − k virtual levels are added outside of the cache. The result (10) can be evaluated via a recursive scheme with computational complexity O(N K

^{2}(l

_{1}+ 1) ··· (l

_{K}+ 1)) [20]. Moreover, a mean-field approximation has been derived by Gast and Van Houdt [20] for simpler and faster evaluations.

## 6. FIFO and LRU Caching Analysis with Data of Different Sizes

_{k}of different sizes s

_{k}. Then, the cache size M does not refer to the number of objects, but it is measured in bytes, and there is no 1:1 replacement of the data. Often, the caching strategy must perform several evictions until enough space for the new object becomes available. Small objects may be inserted without eviction into free cache space, or several evictions may be required to insert a large object.

#### 6.1. LRU Cache Hit Ratio Solution for Objects of Different Sizes

_{LRU}(O

_{k}

_{1}, …, O

_{kM}) of the LRU cache content and the LRU hit ratio ${h}_{IRM}^{LRU}$ have been derived by King [8] in the following format [12,25]:

_{n}in LRU stack position m + 1. In addition, ${p}_{n}{}^{2}$ covers the hits for O

_{n}in the top position. The solution with differentiation of LRU cache content per stack position is still valid for objects of different sizes, as far as they fit into the cache. This leads to a direct extension of Equation (12) for objects O

_{n}of sizes s

_{n}(∀ j ≠ l: k

_{j}≠ k

_{l}; ∀ j: k

_{j}≠ n) [21]:

#### 6.2. No Common FIFO, RANDOM and CpR Solution for Objects of Different Sizes

_{B}= 2; and s

_{C}= 3 and a cache size of M = 4. Then two objects fit together in the cache, except for B and C (s

_{B}+ s

_{C}= 5 > M).

_{B}p

_{C}/(p

_{B}+ p

_{C}) − p

_{A}p

_{B}p

_{C}/(p

_{A}p

_{B}+ p

_{A}p

_{C}+ p

_{B}p

_{C}). In the case of LRU, the direct computation of the hit ratio via Equation (13) is simpler and equivalent.

_{A}= 0.2, p

_{B}= 0.7 and p

_{C}= 0.1 we obtain the following:

- (1)
- The FIFO, RANDOM and CpR hit ratios are different for variable data sizes. Their common product form solution (2) [6] is restricted to unit-size objects.
- (2)
- The proven “LRU is better than FIFO under IRM” result [40] is also restricted to unit data size and again violated in the previous example.
- (3)
- Moreover, a monotonous increase in the LRU, FIFO, RANDOM and CpR hit ratio curves (HRC) with the cache size M again holds only for unit data size.

- Value and Byte Hit Ratio

_{k}per object for the benefit of serving the object from the cache. v

_{k}may refer to measures for reduced link load and energy consumption on a transport network or to reduced delay, improved throughput and other QoS aspects from the user’s perspective. The value hit ratio (VHR) of a cache is defined as (∀ j ≠ l: k

_{j}≠ k

_{l})

_{k}

_{1}, …, O

_{kM}) again denotes the steady state probability of cache content for a considered strategy. This includes the byte hit ratio (BHR), i.e., the fraction of bytes delivered from the cache when the data size represents the caching value (v

_{k}= s

_{k}). In the example of Figure 6, we obtain

#### 6.3. Extended Approximations for Objects of Different Sizes

_{k}:

_{k}when an object O

_{k}enters the cache. The probability p

_{Enter}(k) that O

_{k}is the next object to enter the cache is still assumed to be constant per request:

_{k}is outside of the cache. An iterative evaluation of ${\overline{T}}_{InCache}$ in Equation (14) has similar properties of a monotonous convergence towards a unique solution, as in the unit size case of Equation (5).

_{k}, analogously to the FIFO case of Equation (14) with unchanged formulas for h

_{Che}and h

_{Fagin}[21,28]:

#### 6.4. Oversize Objects and Unused Cache Space (UCS)

_{k}> M, which cannot enter and therefore should be excluded from the set of relevant data objects in the computations of Equations (14)–(17). A fraction of unused cache space is another factor that is not regarded in those approximations. We estimate its mean value E[UCS] and then apply Equations (14)–(17) with a reduced cache size M* = M − E[UCS] = E[F], as the mean cache fill level E[F]. We transfer an UCS estimation scheme for LRU [21] to the FIFO approximation case. The concept of the estimation scheme is summarized in the next section.

#### 6.5. Approximation Scheme for the Mean Unused Space in FIFO Caches

_{m}denote the cache fill level before the m

^{th}request. The fill level stays unchanged for a cache hit: F

_{m}

_{+1}= F

_{m}. In the case of a cache miss, F

_{m}is increasing by the size of the requested object and decreasing by compensating evictions. We obtain

^{th}request and ${s}_{m,k}^{E}$ are the sizes of eviction candidates. K is the number of required evictions until the requested object fits into the cache, where K = 0 if it fits into the currently empty space, i.e., if F

_{m}+${s}_{m}^{R}$ ≤ M. The size ${s}_{m}^{R}$ of objects that enter the cache has a discrete distribution s(j) for the number of bytes or kbytes, with a maximum size s

_{max}. We obtain s(j) = Σ

_{k}p

_{Enter}(O

_{k}) Prob(s

_{k}= j), where the probability p

_{Enter}(O

_{k}) that an object O

_{k}(re-)enters the cache is computed via Equation (15) on the basis of the FIFO approximation. We assign the same discrete distribution s(j) also as the size to the eviction candidates. Finally, the fill level F

_{m}can be evaluated in the format of discrete distributions f

_{m}(j) = Prob(F

_{m}= j), where M − s

_{max}≤ F

_{m}≤ M.

_{m+}

_{1}] − E[F

_{m}]| < ε is becoming negligibly small:

_{m}

_{→ ∞}E[F

_{m}]; E[UCS] = M − E[F].

_{Enter}(O

_{k}) is obtained via Equation (15), with an impact also on the distribution of the object sizes s(j).

_{1}= 1, …, s

_{50}= 50, and with independent and Zipf-distributed requests p

_{k}= αk

^{−}

^{β}for k = 1, …, 50, where α = 1/Σ

_{k}k

^{−}

^{β}[31]. Figure 7 shows the hit ratio curves (HRCs) for three examples:

- β = 0, i.e., for uniform requests among all data objects (p
_{1}= … = p_{50}= 2%), - β = 0.8 with a preference for small objects (p
_{1}≈ 15.3%, p_{2}≈ 8.8%, …, p_{50}≈ 0.67%), and - β = 0.8 with a preference for large objects (p
_{50}≈ 15.3%, …, p_{1}≈ 0.67%).

_{k}= k > M, with the highest drawback in the third case. The three FIFO HRCs in Figure 7 are obtained via simulation, being accompanied by a curve for the basic FIFO approximation of Equation (14) as FIFO Approx.-1, marked with circles, and the approximation with UCS correction as FIFO Approx.-2, marked with triangles.

_{k}/s

_{k}as a score to maximize the IRM hit rate according to a knapsack solution.

## 7. Conclusions

- The maximum absolute deviations |∆h
_{Che}| of Che’s approximation are decreasing with the cache size M from 8.25% for M = 1 down to less than 1% for M ≥ 10. - The maximum absolute deviations |∆h
_{Fagin}| of Fagin’s approximation are decreasing with the cache size M from 5.2% for M = 2 down to less than 1.3% for M ≥ 10. - The maximum deviations of the FIFO approximation [25] are decreasing with the cache size M from 16.5% for M = 1 down to less than 3% for M ≥ 10.

## Author Contributions

## Funding

## Institutional Review Board Statement

## Informed Consent Statement

## Data Availability Statement

## Conflicts of Interest

## References

- Podlipnik, S.; Böszörmenyi, L. A survey of web cache replacement strategies. ACM Comput. Surv.
**2003**, 35, 374–398. [Google Scholar] [CrossRef] - Arlitt, M.; Williamson, C. Internet web servers: Workload characterization and performance implications. IEEE Trans. Netw.
**1997**, 5, 631–645. [Google Scholar] [CrossRef] - Li, S.; Xu, J.; van der Schaar, M.; Li, W. Popularity-driven content caching. In Proceedings of the IEEE Infocom, San Francisco, CA, USA, 10–14 April 2016; pp. 1–9. [Google Scholar]
- Paschos, G.S.; Iosifidis, G.; Tao, M.; Towsley, D.; Caire, G. The role of caching in future communication systems and networks. IEEE JSAC
**2018**, 36, 1111–1125. [Google Scholar] [CrossRef][Green Version] - Corbato, F.J. A paging experiment with the Multics system. MIT Proj. MAC Rep. MAC-M-384
**1968**, 1–14. [Google Scholar] - Gelenbe, E. A unified approach to the evaluation of a class of replacement algorithms. IEEE Trans. on Comp.
**1973**, 100, 611–618. [Google Scholar] [CrossRef] - McCabe, J. On serial files with relocatable records. Oper. Res.
**1965**, 13, 609–618. [Google Scholar] [CrossRef] - King, W.F., III. Analysis of demand paging algorithms. In Proceedings of the IFIP Congress, Ljubljana, Yugoslavia, 23–28 August 1971; pp. 485–490. [Google Scholar]
- Lee, D.; Choi, J.; Kim, J.H.; Noh, S.H.; Min, S.L.; Cho, Y.; Kim, C.S. LRFU: A spectrum of policies that subsumes the least recently used and least frequently used policies. IEEE Trans. Comput.
**2001**, 50, 1352–1361. [Google Scholar] - Dehghan, M.; Massoulie, L.; Towsley, D.; Menasche, D.S.; Tay, Y.C. A Utility optimization approach to network cache design. IEEE/ACM Trans. Netw.
**2019**, 27, 1013–1027. [Google Scholar] [CrossRef][Green Version] - Hasslinger, G.; Ntougias, K.; Hasslinger, F.; Hohlfeld, O. Performance evaluation for new web caching strategies combining LRU with score-based selection. Comput. Netw.
**2017**, 125, 172–186. [Google Scholar] [CrossRef] - Li, J.; Shakkottai, S.; Lui, J.C.S.; Subramanian, V. Accurate learning or fast mixing? Dynamic adaptability of caching algorithms. IEEE JSAC
**2018**, 36, 1314–1330. [Google Scholar] [CrossRef][Green Version] - Paschos, G.S.; Iosifidis, G.; Caire, G. Cache optimization models and algorithms. Found. Trends Commun. Inf. Theory
**2020**, 16, 156–345. [Google Scholar] [CrossRef] - Eytan, O.; Harnik, D.; Ofer, E.; Friedman, R.; Kat, R. It’s time to revisit LRU vs. FIFO. In Proceedings of the 12th USENIX HotStorage Workshop, Berkeley, CA, USA, 13–14 July 2020; pp. 1–7. [Google Scholar]
- Hasslinger, G.; Ntougias, K.; Hasslinger, F.; Hohlfeld, O. Fast and efficient web caching methods regarding the properties per data. In Proceedings of the IEEE CAMAD, Limassol, Cyprus, 11–13 September 2019; pp. 1–7. [Google Scholar]
- Yang, J.; Yue, Y.; Rashmi, K.V. A large-scale analysis of key-value cache clusters at Twitter. ACM Trans. Storage
**2021**, 17, 1–35. [Google Scholar] [CrossRef] - ElAarag, H. Web Proxy Cache Strategies: Simulation, Implementation and Performance Evaluation; Springer Publisher: Berlin/Heidelberg, Germany, 2013; pp. 1–103. [Google Scholar]
- Megiddo, N.; Modha, S. Outperforming LRU with an adaptive replacement cache algorithm. IEEE Comput.
**2004**, 37, 58–65. [Google Scholar] [CrossRef] - Ntougias, K.; Papadias, C.B.; Papageorgiou, G.K.; Hasslinger, G.; Sorensen, T.B. Coordinated caching and QoS-aware resource allocation for spectrum sharing. Wirel. Pers. Comm.
**2020**, 112, 49–79. [Google Scholar] [CrossRef] - Gast, N.; Van Houdt, B. Transient and steady-state regime of a family of list-based cache replacement algorithms. In Proceedings of the ACM Sigmetrics, Portland, OR, USA, 15–19 June 2015. [Google Scholar]
- Hasslinger, G.; Ntougias, K.; Hasslinger, F.; Hohlfeld, O. Analysis of the LRU cache startup phase and convergence time and error bounds on approximations by Fagin and Che. In Proceedings of the WiOpt Symposium, CCDWN workshop, Turin, Italy, 19 September 2022; pp. 1–8. [Google Scholar]
- Wong, K.Y.; Yeung, A.; Choi, K.C.; Lei, P.; Lam, C.T. Exact transient analysis on LRU cache startup for IoT. In Proceedings of the 9th International Conference on Information Technology: IoT and Smart City, New York, NY, USA, 22–25 December 2021; pp. 310–315. [Google Scholar]
- Fagin, R. Asymptotic miss ratios over independent references. J. Comp. Syst. Sci.
**1977**, 14, 222–250. [Google Scholar] [CrossRef][Green Version] - Che, H.; Tung, Y.; Wang, Z. Hierarchical web caching systems: Modeling, and experimental design. IEEE JSAC
**2002**, 20, 1305–1314. [Google Scholar] - Dan, A.; Towsley, D. An approximate analysis of the LRU and FIFO buffer replacement schemes. In Proceedings of the ACM SIGMETRICS, Boulder, CO, USA, 22–25 May 1990; pp. 143–152. [Google Scholar]
- Berthet, C. Approximation of LRU caches miss rate: Application to power-law popularities. arXiv
**2017**, arXiv:1705.10738. [Google Scholar] - Brenner, M. A Lyapunov analysis of LRU. Master Thesis, University of Illinois Urbana-Champaign, Champaign, IL, USA, 2020; pp. 1–42. [Google Scholar]
- Fricker, C.; Robert, P.; Roberts, J. A versatile, accurate approximation for LRU cache performance. In Proceedings of the ITC 24, Krakow, Poland, 4–7 September 2012; pp. 1–8. [Google Scholar]
- Poojary, P.; Moharir, S.; Jagannathan, K. A coupon collector based approximation for LRU cache hits for Zipf requests. In Proceedings of the 19th International Symposium on Modeling and Optimization in Mobile, Ad hoc, and Wireless Networks (WiOpt), Philadelphia, PA, USA, 18–21 October 2021; pp. 1–8. [Google Scholar]
- Fagin, R.; Price, T.G. Efficient calculation of expected miss ratios in the independent reference model. SIAM J. Comput.
**1978**, 7, 288–296. [Google Scholar] [CrossRef] - Breslau, L.; Cao, P.; Fan, L.; Phillips, G.; Shenker, S. Web caching and Zipf-like distributions: Evidence and implications. In Proceedings of the IEEE Infocom, New York, NY, USA, 21–25 March 1999; pp. 126–134. [Google Scholar]
- Traverso, S.; Ahmed, M.; Garetto, M.; Giaccone, P.; Leonardi, E.; Niccolini, S. Unraveling the impact of temporal and geographical locality in caching systems. IEEE Trans.
**2015**, 17, 1839–1854. [Google Scholar] - Hasslinger, G.; Kunbaz, M.; Hasslinger, F.; Bauschert, T. Web caching evaluation for Wikipedia request statistics. In Proceedings of the IEEE WiOpt Symposium, Paris, France, 15–19 May 2017; pp. 1–6. [Google Scholar]
- Rosensweig, E.J.; Menasche, D.S.; Kruose, J. On the steady-state of cache networks. In Proceedings of the IEEE Infocom, Turin, Italy, 14–19 April 2013; pp. 863–871. [Google Scholar]
- Marin, A.; Rossi, S.; Burato, D.; Sina, A.; Sottana, M. A product-form model for the performance evaluation of a bandwidth allocation strategy in WSN. ACM TOMACS
**2018**, 28, 1–23. [Google Scholar] [CrossRef][Green Version] - Tsukada, N.; Hirade, R.; Miyoshi, N. Fluid limit analysis of FIFO and RR caching for IRM. Perform. Eval.
**2012**, 69, 403–412. [Google Scholar] [CrossRef] - Garetto, M.; Leonardi, E.; Martina, V. A unified approach to the performance analysis of caching systems. ACM Trans. Model. Perform. Eval. Comput. Syst.
**2016**, 1, 1–28. [Google Scholar] [CrossRef][Green Version] - Gast, N.; Van Houdt, B. TTL approximations of the cache replacement algorithms LRU(m) and h-LRU. In Performance Evaluation; Elsevier: Amsterdam, The Netherlands, 2017; pp. 33–57. [Google Scholar]
- Gomaa, H.; Messier, G.G.; Williamson, C.; Davies, R. Estimating instantaneous cache hit ratio using Markov chain analysis. IEEE/ACM Trans. Netw.
**2013**, 21, 1472–1483. [Google Scholar] [CrossRef] - Van den Berg, J.; Gandolf, A. LRU is better than FIFO under the independent reference model. J. Appl. Probab.
**1992**, 29, 239–243. [Google Scholar] [CrossRef][Green Version] - Starobinsky, D.; Tse, D. Probabilistic methods for web caching. Perf. Eval.
**2001**, 46, 125–137. [Google Scholar] [CrossRef][Green Version]

Solution Type and References | Applies to | Scalable Computation | Different Object Sizes | Maximum Deviations | |
---|---|---|---|---|---|

Analytic Cache Hit Ratio Results | Product Form [8] Equations (1) and (2) | FIFO, Clock p.R., RANDOM | ☑ [30] Section 2.2 | ☒ No Common Solution fo FIFO, CpR, RANDOM | Numerially Exact Evaluations |

Extension [20] Equation (10) | Multi-Level Caches | Complex, but Scalable | |||

LRU Formula [8] Equations (11) and (12) | LRU & Cache Fill Phases | ☒ Only for Small Caches | ☑ Extension Equation (13) [21] | ||

Approximations | Dan et al. [25] Equations (4) and (5) | FIFO, CpR, RANDOM | ☑ | ☑ but less accurate Section 6.3, Section 6.4, Section 6.5 | 16% for M = 1 <3% for M ≥ 10 |

Fagin [23] Equation (8) | LRU & Cache Fill Phases | 5.4% for M = 2 <1.3% for M ≥ 10 | |||

Che et al. [24] Equation (7) | 8.5% for M = 1 <1% for M ≥ 10 |

Maximum Errors of Che’s and Fagin’s Approximation for Cache Sizes M ≤ 10 Worst Case Request Distributions Are of the Type (6) with p _{1}= ∙∙∙ = p_{n} = p/n | ||||||
---|---|---|---|---|---|---|

M | Max. Error |Δh _{Che}| | Worst Case (6) | ${h}_{IRM}^{LRU}$|| h_{Che} | Max. Error |Δh _{Fagin}| | Worst Case (6) | ${h}_{IRM}^{LRU}$|| h_{Fagin} |

n || p/n | n || p/n | |||||

1 | 8.25% | 1 || 0.845 | 0.7055 || 0.6230 | Fagin’s approximation is exact for M = 1 | ||

2 | 4.48% | 2 || 0.455 | 0.7971 || 0.7523 | 5.20% | 1 || 0.675 | 0.6041 || 0.6561 |

3 | 2.97% | 3 || 0.310 | 0.8247 || 0.7950 | 3.53% | 1 || 0.540 | 0.4876 || 0.5229 |

4 | 2.18% | 4 || 0.235 | 0.8523 || 0.8305 | 2.82% | 2 || 0.360 | 0.6655 || 0.6937 |

5 | 1.71% | 5 || 0.192 | 0.8818 || 0.8647 | 2.31% | 2 || 0.315 | 0.5867 || 0.6098 |

6 | 1.39% | 6 || 0.160 | 0.8922 || 0.8783 | 1.99% | 3 || 0.247 | 0.6894 || 0.7093 |

7 | 1.17% | 7 || 0.139 | 0.9046 || 0.8929 | 1.72% | 3 || 0.227 | 0.6342 || 0.6514 |

8 | 1.03% | 6 || 0.155 | 0.9055 || 0.9158 | 1.54% | 4 || 0.187 | 0.7033 || 0.7187 |

9 | 0.97% | 7 || 0.134 | 0.9188 || 0.9285 | 1.39% | 5 || 0.158 | 0.7500 || 0.7639 |

10 | 0.91% | 8 || 0.119 | 0.9314 || 0.9405 | 1.26% | 5 || 0.150 | 0.7043 || 0.7169 |

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |

© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Hasslinger, G.; Ntougias, K.; Hasslinger, F.; Hohlfeld, O.
Scope and Accuracy of Analytic and Approximate Results for FIFO, Clock-Based and LRU Caching Performance. *Future Internet* **2023**, *15*, 91.
https://doi.org/10.3390/fi15030091

**AMA Style**

Hasslinger G, Ntougias K, Hasslinger F, Hohlfeld O.
Scope and Accuracy of Analytic and Approximate Results for FIFO, Clock-Based and LRU Caching Performance. *Future Internet*. 2023; 15(3):91.
https://doi.org/10.3390/fi15030091

**Chicago/Turabian Style**

Hasslinger, Gerhard, Konstantinos Ntougias, Frank Hasslinger, and Oliver Hohlfeld.
2023. "Scope and Accuracy of Analytic and Approximate Results for FIFO, Clock-Based and LRU Caching Performance" *Future Internet* 15, no. 3: 91.
https://doi.org/10.3390/fi15030091