Heterogeneous Cache Sizes

Not All Caches Are Equal

Real users have different cache budgets: a smartphone with 64 GB of free storage is different from a tablet with 500 GB. A smart-TV set-top box is different from a handheld. Even within a homogeneous fleet, users may pre-allocate storage differently. How does coded caching perform when cache sizes vary across users?

This section extends MAN to the heterogeneous-cache setting and quantifies the rate degradation from heterogeneity. The main result: at fixed aggregate cache βˆ‘kMk=KMΛ‰\sum_k M_k = K \bar M, the best achievable rate is typically within a constant factor of the homogeneous rate at the average. Heterogeneity costs a factor of ≀2\leq 2.

Definition:

Heterogeneous-Cache Network

In a heterogeneous-cache coded caching network, user kk has cache size MkM_{k} files, with k∈[K]k \in [K]. The average cache is MΛ‰=(1/K)βˆ‘kMk\bar{M} = (1/K) \sum_k M_{k}. The aggregate caching gain is taggβ€…β€Š=β€…β€Šβˆ‘kMk/Nβ€…β€Š=β€…β€ŠKMΛ‰/N.t_\text{agg} \;=\; \sum_k M_{k} / N \;=\; K \bar{M}/N. Demand vectors d∈[N]K\mathbf{d} \in [N]^K as in MAN.

At Mk=MˉM_{k} = \bar{M} for all kk: reduces to homogeneous MAN. At extreme heterogeneity (some caches empty, others full): significantly different.

Theorem: Achievable Rate with Heterogeneous Caches

For a heterogeneous-cache network with per-user caches (M1,…,MK)(M_{1}, \ldots, M_{K}), the following rate is achievable: Rhet(M1,…,MK)β€…β€Šβ‰€β€…β€ŠK ⁣(1βˆ’ΞΌΛ‰)/(1+KΞΌΛ‰),R_\text{het}(M_{1}, \ldots, M_{K}) \;\leq\; K\!\left(1 - \bar{\mu}\right)/\left(1 + K\bar{\mu}\right), where ΞΌΛ‰=MΛ‰/N\bar{\mu} = \bar{M}/N is the average memory ratio. Moreover, the gap to the homogeneous rate at MΛ‰\bar M is at most a factor of 2.

A randomized placement that mimics MAN but allows cache sizes to vary achieves the stated rate. At aggregate level, the caching gain depends only on βˆ‘Mk=KMΛ‰\sum M_k = K \bar M. Individual heterogeneity affects the distribution of cached content but not (to first order) the total coded-multicast opportunity.

Heterogeneous Cache Effect

Rate as a function of cache heterogeneity (spread across users). At 0 (homogeneous): baseline MAN rate. As heterogeneity grows, some users cache more, others less β€” aggregate cache is fixed, rate slightly degrades. Even at full heterogeneity, gap to homogeneous is small. Reveals that average cache is the dominant quantity.

Parameters
10
0.3

Example: Two-Tier User Network

Design a network: 50% of users have M1=100M_1 = 100 (rich cache), 50% have M2=10M_2 = 10 (poor cache). Library N=200N = 200, total users K=100K = 100. Compute the achievable heterogeneous rate and compare with homogeneous MAN at Mˉ=55\bar M = 55.

Rich Caches Subsidize Poor Caches

A subtle but important insight from the heterogeneous-cache analysis: users with larger caches not only benefit themselves (higher hit ratio, cache direct) but also contribute to other users' content via coded multicasting. A user with a very large cache holds many subfiles that appear in XOR messages targeting other users.

Economic implication: rich-cache users create positive externalities. In privacy-preserving / incentive-compatible designs, rewarding users who contribute large caches (beyond what they personally need) could improve total network performance. The theoretical basis for this is the MAN structure's sensitivity to aggregate cache rather than individual cache.

Common Mistake: Average, Not Minimum

Mistake:

Saying "heterogeneous MAN rate is bottlenecked by the smallest cache."

Correction:

The bottleneck is the aggregate cache, not the minimum. Rich caches compensate for poor caches in the coded-multicast gain formula. A single user with zero cache still receives coded messages that are XOR'd from other users' cached subfiles. Her own lack of cache reduces her hit rate but not the delivery rate to others.

Mathematically: RMANR_{\text{MAN}} depends on βˆ‘Mk/N\sum M_k/N, not min⁑Mk/N\min M_k/N. This is a pleasant feature β€” fleet heterogeneity is surprisingly friendly to coded caching.