L1、L2 和 L3 緩存:有什麼區別?

已發表: 2023-06-03
MSI 主板上的 CPU 芯片
傑森·菲茨帕特里克 / How-To Geek
L1、L2 和 L3 高速緩存之間的主要區別在於容量和傳輸速度。 L1 容量低但速度極快,L2 速度較慢但存儲空間更大,L3 是三者中最慢的但通常也具有最大的存儲容量。

現代計算機處理器都採用多級高速緩衝存儲器系統,可以讓數據暫時存儲在芯片上,以便快速訪問。 如果您想從購買的下一個 CPU 中獲得最佳性能,那麼了解 L1、L2 和 L3 緩存之間的差異可能很重要。

什麼是 CPU 高速緩存?

CPU 高速緩存是一種位於處理器上的臨時數據存儲。 它用於通過保存準備好高速訪問的小的、經常請求的數據位來提高 CPU 的處理效率。 高速緩存由不同級別的存儲組成。 這些級別通常稱為 L1、L2、L3,有時也稱為 L4,並且位置、速度和大小各不相同。

為了更好地理解為什麼 CPU 需要自己的內存緩存,我們必須看看處理器和 RAM 的發展。 在早期的計算機中,處理器和 RAM 之間的速度差異很小。 幾乎不用擔心內存會減慢處理速度。 由於中央處理器運行速度的增長遠遠超過 RAM 速度,因此需要以某種方式減少這種差異。 答案是高速緩存。

緩存內存速度極快,通常比 DRAM 快 10 到 100 倍,而且在物理上靠近處理器內核。 現代、快速的處理器不會因為必須從相對較慢的系統內存中請求數據而減慢速度,因為它們可以從緩存中獲取數據。

這種稱為 SRAM 的內存之所以不僅僅用於代替計算機中的 DRAM,其原因在於其成本。 CPU 上的緩存內存量相對較小,以千字節或兆字節而不是千兆字節為單位,並且製造與現代 RAM 模塊相同大小的成本將高得令人望而卻步。

高速緩存不應與計算機中常見的其他類型的高速緩存相混淆。 儘管“高速緩存”可以指用於提高軟件或硬件效率的幾種臨時內存存儲,但高速緩存特定於處理器硬件。

什麼是一級緩存?

L1 緩存,有時稱為主緩存,是最小和最快的內存級別。 它的大小通常為 64KB,但處理器的每個內核都有自己內置的 L1 緩存,因此四核 CPU 總共有 256KB。

如果您查看 CPU-Z 等工具中的內存詳細信息,您會注意到 L1 緩存進一步分為兩個級別:L1-I(指令)和 L1-D(數據)。 L1 指令緩存處理將饋送到處理器的信息,而數據緩存保存要寫入主內存的信息。

查看 CPU-Z 中的 L1 緩存

一級高速緩存可以以與 CPU 的最大運行速度一樣快或更快的速度傳輸數據,因此效率極高。 如果處理器在 L1 中找不到所需的數據,它會在 L2 和 L3 緩存中查找。

什麼是二級緩存?

L2 緩存是二級內存緩存,也嵌入在 CPU 的每個單獨內核中。 它幾乎總是比 L1 有更多的存儲空間,但它的運行速度較慢,儘管仍然比 RAM 速度快得多。

一些高端處理器可能總共有 32MB 的二級緩存,但 6-12MB 可能是平均值。 如前所述,這在所有內核之間平均分配,允許每個內核獨立訪問自己的緩存。

什麼是三級緩存?

3 級緩存不是嵌入在每個 CPU 內核中,而是充當整個處理器都可以訪問的共享存儲池。 它比 L1 和 L2 緩存慢得多,可能只有 RAM 的兩倍,但它是所有三個內存級別中最大的。

如果 CPU 無法在高速緩存中找到它需要的數據,它必須改為從較慢的系統內存中請求數據。 這稱為高速緩存未命中。 L3 緩存的引入減少了未命中的機會,因此有助於提高性能。

最初開發時,L3 緩存通常位於主板上的單獨芯片中。 現代 CPU 現在幾乎完全具有板載 L3 緩存以提高效率。

L1 vs. L2 vs. L3 緩存:有什麼區別?

三級高速緩存之間的主要區別在於大小、速度和它們所在的位置。

  • L1 緩存的存儲容量較低,但通常是所有計算機中最快的內存,比 RAM 快 100 倍。 每個處理器內核都有自己的 L1 緩存,通常約為 64KB。
  • L2 緩存可能比 L1 大幾倍,但速度僅為 RAM 的 25 倍左右。 與 L1 一樣,每個處理器內核都有自己的 L2 緩存。 每個通常為 256-512KB,有時高達 1MB。
  • L3 緩存具有最大的存儲容量,通常為 32MB 或更多,但速度可能僅為系統內存的兩倍。 L3 緩存通常嵌入在 CPU 中,但與內核分開。

緩存內存可以刪除嗎?

有可以刪除或清除的內存緩存,例如係統緩存或瀏覽器緩存,但不能刪除 CPU 緩存內存。 就像 DRAM 一樣,SRAM 是易失性存儲器,這意味著它不會長期保留其內容。 一旦關閉計算機電源,高速緩存中的所有內容都會丟失。

我需要多少高速緩存?

與大多數類型的內存一樣,CPU 的緩存越多越好。 您無法升級高速緩存,因此確保您選擇的處理器足以滿足您的需求非常重要。 也就是說,這取決於您使用計算機做什麼,您不應該迷戀於這一 CPU 功能。 時鐘速度、內核和線程數以及其他因素都會影響 CPU 性能。

L1 緩存的良好基線是每個內核 64KB。 您可以通過將總量除以 CPU 中的內核數來計算。 每個核心 256KB 的 L2 緩存是完全可以接受的,但遊戲玩家可能希望尋找每個核心 512KB 的緩存。 對於大多數用途,32 到 96MB 的 L3 緩存都可以。

相關: CPU 基礎知識:什麼是內核、超線程和多 CPU?