Does the TLB make a significant impact on the performance of the system?

It might appear not…

Consider a 4 MB process on a system with 4KB pages. That process will have 1000 pages.

If the TLB has 32 entries then only 32 of 1000 pages will be in the TLB.

Therefore, one might think that only 32/1000 page requests would be found in the TLB.

That might be true if the process was just making random memory requests.

Luckily, most processes do not behave that way.

 

Locality of Reference:

Locality of reference basically says that most processes will make a large number of references to a small number of pages as opposed to a small number of references to a large number of pages.

Locality of reference can be summarized by the 90/10 rule of thumb.

A process spends 90% of its time in 10% of its code.

It is not clear that that also holds for a program's data. (But we will ignore that for now.)