When the CPU
is looking for the next bit of data
to execute and can't find it in the L1 cache
, the L2 cache
, or system memory
, the data must be paged in from the hard drive
. This is called a "compulsory miss", because it cannot be avoided; at some point, every piece of data will need to be fed into the cache
for the first time.
Prefetching is a nifty trick that helps work around the inefficiency of a compulsory miss.