CPU多級緩存
爲什麼需要CPU緩存
- CPU的頻率越來越快,主存越來越跟不上CPU的變化,這樣伴隨的問題就是處理器的時鐘週期內,CPU需要常常等待主存,浪費資源。所以緩存的出現,是爲了緩解CPU和內存之間的速度不匹配問題。
一級緩存
- CPU核心與主存之間有一層高速緩存。如下圖(1)所示,數據的讀取與存儲都經過高速緩存。主存和緩存都連接在系統總線上(Bus)。
多級緩存
- CPU核心與主存之間有多級緩存。如下圖(2)所示
緩存如何解決CPU和內存之間的速度問題(意義)
- 時間局部性:如果某個數據被訪問,那麼在不久的將來它很可能被再次訪問
- 空間侷限性:如果某個數據被訪問,那麼與它相鄰的數據也可能很快被訪問
緩存一致性(MESI) 重點
- 保證多個CPU cache 之間緩存共享數據的一致,如下圖(3)所示。