cache的命中率为0.8,则CPU从外存调取数据的几率怎么算

假如cache的命中率为0.8,当cache和主存都不命中时,CPU从外存调取数据的几率怎么算?(知道结果,但是不知道怎么来的)

根据CPU访问主存的模型,当CPU访问一个内存地址时,它首先会在cache中查找该地址对应的数据,如果命中则会直接读取;否则,CPU会从主存中读取数据并将其存入cache中,供后续的读写操作使用。当cache和主存都无法命中时,CPU只能从外存中读取数据。

因此,可以通过以下公式计算CPU从外存中读取数据的概率:

P = (1 - Cache命中率) x (1 - 主存命中率)

已知Cache命中率为0.8,假设主存也有80%的数据被缓存在Cache中,则主存命中率为0.8,带入上述公式可得:

P = (1 - 0.8) x (1 - 0.8) = 0.04

即CPU从外存调取数据的概率为4%。