Paging & Address Translation

the effective access time

/ abbr. EAT /

Imagine most of your phone calls use numbers already on your sticky note (fast), but a few force you to flip through the phone book first (slow). If someone asks 'on average, how long does a call take to start?', you cannot just quote the fast time or the slow time — you must blend them by how OFTEN each happens. The EFFECTIVE ACCESS TIME is that blended average for a memory access under paging: the typical time per access, weighting the fast TLB-hit path and the slow TLB-miss path by their probabilities.

Here is the calculation, which is just a weighted average. Let the TLB hit ratio be h (a fraction between 0 and 1), let a TLB hit cost the time of one memory access m, and let a TLB miss cost an extra memory access to read the page table plus the data access, so 2m in the simplest single-level model. Then effective access time = h * m + (1 minus h) * 2m. (Strictly, every access also spends a tiny TLB lookup time, often added in or ignored as negligible.) For example, with m = 100 nanoseconds and h = 0.98: EAT = 0.98 * 100 + 0.02 * 200 = 98 + 4 = 102 nanoseconds, only 2 percent slower than raw memory. With a hierarchical (multi-level) page table a miss costs more, because the walk reads several levels, so the miss term grows accordingly.

Effective access time matters because it turns the abstract idea 'the TLB helps' into a hard number that shows EXACTLY how much paging costs, and it makes vivid why a high hit ratio is so valuable: even a couple of percent of misses, when a miss is twice as slow, noticeably moves the average. The honest caveat is that the simple formula assumes a single-level page table and ignores ordinary CPU caches; real machines layer multi-level tables, hardware page-walkers, and data caches on top, so the formula is a clean teaching model rather than an exact measurement of any specific chip.

Memory access m = 100 ns, TLB hit ratio h = 0.80 (a poor 80 percent). EAT = 0.80 * 100 + 0.20 * 200 = 80 + 40 = 120 ns, a 20 percent slowdown. Raise h to 0.99 and EAT drops to 0.99 * 100 + 0.01 * 200 = 101 ns, a 1 percent slowdown — the same hardware, far better thanks to a higher hit ratio.

Effective access time is a weighted average of the hit and miss paths; a higher hit ratio shrinks the penalty fast.

The simple formula assumes a single-level page table and ignores CPU data caches; multi-level tables make a miss cost several memory accesses, raising the miss term. Treat the number as a teaching model, not a chip benchmark.

Also called
EATaverage memory access time平均存取時間