(2)cache line size(每次与内存交换信息的单位量)与命中率的关系

  由于cache在命中的情况下,可以在0等待状态快速向CPU提供指令和数据,而一旦出现缺失(不命中),CPU就必须到内存去取信息,势必会增加几个等待状态。为此,就希望减少访问内存的次数。这实际上可以通过每次到内存取信息时,不是以一个字为单位,而是以几个字(称为cache行容量,通常为4~32个字节)在主存与cache之间实现信息传送。大家会问,每次读一个字还嫌主存慢,一次读几个字是不是会使情况更糟?当然不是的。读几个字是通过成组数据传送方式完成的。为此,CPU必须支持这种传送方式(PC 486及以上的型号均支持),主存一方也应使用多体结构,数据总线也许有更多的位数等(多个字的传输用的时间会比较少),对CPU的打扰就更小。完成一次传送后,CPU使用接下来的几个字就都会命中。当然也不是cache line size越大越好,一是会拖慢本次完成传送的进度,还可能出现传送到cache中的过多信息并不被CPU使用的情况,造成费时、费资源而不讨好的令人尴尬的局面。