首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

計算機二級緩存(L2 Cache)原理與作用

     編輯:程式設計疑難解答

定義

L2 Cache 位於 CPU 核心與主內存之間,容量大於 L1(通常 256KB~幾十 MB),速度介於 L1 和內存之間。

層級結構


寄存器 (最快, 最小)
   ↓
L1 Cache (指令/數據分離, ~32-64KB)
   ↓
L2 Cache (統一, ~256KB-8MB)
   ↓
L3 Cache (多核共享, ~8-32MB, 現代 CPU 常見)
   ↓
主內存 (DRAM, ~GB 級)
   ↓
硬盤/SSD (最慢, 最大)

作用機制

  • 數據訪問優先查找 L1 → L2 → L3 → 內存。
  • L2 緩存 L1 未命中但近期可能訪問的數據,降低內存訪問延遲。
  • 包含指令、數據,採用寫回/寫通策略保持一致性。

為什麼不全用寄存器?

成本指數級增長:SRAM (Cache) 單位成本遠高於 DRAM (內存),寄存器更貴。金字塔結構在成本與性能間取得平衡。

現代演進

多核 CPU 引入 L3 Cache 共享,減少核間數據傳輸開銷。部分架構(如 AMD Zen)採用大容量 L3 作為「受害者緩存」。

理解緩存層級,有助於編寫緩存友好代碼(空間/時間局部性)。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved