1. 程式人生 > >L1 Cache, L2 Cache讀取命中率與時鐘周期計算

L1 Cache, L2 Cache讀取命中率與時鐘周期計算

cpu href blog pan www intel 為知 tag lse

CPU在Cache中找到有用的數據被稱為命中,當Cache中沒有CPU所需的數據時(這時稱為未命中),CPU才訪問內存。從理論上講,在一顆擁有2級Cache的CPU中,讀取L1 Cache的命中率為80%。也就是說CPU從L1 Cache中找到的有用數據占數據總量的80%,剩下的20%從L2 Cache讀取。由於不能準確預測將要執行的數據,讀取L2的命中率也在80%左右(從L2讀到有用的數據占總數據的16%)。那麽還有的數據就不得不從內存調用,但這已經是一個相當小的比例了。
假如CPU從L1,L2,主存的訪問周期分別為1/10/100, 那麽存儲系統平均訪問周期為0.8*1+(1-0.8)*0.8*10+(1-0.8-(1-0.8)*0.8)*100=6.4



在一些高端領域的CPU(像Intel的Itanium)中,我們常聽到L3 Cache,它是為讀取L2 Cache後未命中的數據設計的—種Cache,在擁有L3 Cache的CPU中,只有約5%的數據需要從內存中調用,這進一步提高了CPU的效率。



來源: https://blog.csdn.net/myxmu/article/details/17021975


來自為知筆記(Wiz)

L1 Cache, L2 Cache讀取命中率與時鐘周期計算