為什麼英特爾和 AMD 的 CPU 緩存只有三級,而不做四級或者更多?


一句話解釋,緩存太佔地方,而且投入和回報不成正比,實在是不划算。

一張圖片就很明了了,三級緩存差不多佔據了兩個核心的面積,如果加上四級呢?五級呢?

要知道緩存容量都是急速遞增的,你看圖裡看不到L1和L2 Cache吧, 如果有四級緩存,

單獨的緩存面積就比整個現有的CPU大。

那可能導致什麼問題呢?

1. 同樣的晶圓,原本能生產32塊CPU,加上四級緩存可能10塊都生產不了,價格暴漲沒人買賬。

2. 核心面積大,功耗大,發熱量大,對散熱設備要求高,與未來發展趨勢對著干..

而且核心面積大,良品率低,比較悲劇的是容易碎(我按碎過好多塊)

3. 堆緩存這種方式,明顯是土豪作風,要知道intel早期處理器連L3 Cache都沒有。

而且關鍵的問題是,你單純的堆緩存,早晚有一天會混不下去,和之前攀主頻的競賽類似。

還不如想辦法去提升架構。

4. 對於整體性能的作用,L1 cache最大,L2次之, L3甚至不到L1 cache的十分之一。

若是不計成本的話,加到L4還有情可原,加到L5其實已經和系統內存差不多了。


額,套用 @泰羅Taro 的話說,在PC領域中,增加的四級緩存命中率提升並不高,不會帶來多少性能提升,反而增加過多成本,所以就捨棄了,而伺服器領域不會太多在乎成本所以緩存就大了起來


L4.感覺沒啥用...


部分 CPU 是有四級緩存的,如 i7-4702HQ 這種 (eDRAM),伺服器 CPU 也很常見。

當然成本是主要問題


不請自來~

其實現在Intel 的CPU已經有增加L4緩存的版本了,不過這裡的L4主要用於解決核顯和CPU之間交換數據,稱為eDRAM。原先的核顯沒有顯存,只能共享內存空間,限制了核顯性能和效率。現在在CPU和GPU之間增加了128MB的eDRAM,讓GPU與CPU做數據交換分享與計算的時候不需要從

晶元外調用資源,都直接在晶元里調取,效率更高。

如下圖,Intel E3-1284L,集成核顯P520 Pro,在視頻轉碼的執行效率是傳統CPU+PCI-E GPU的10倍以上。


可以做。

多級的好處是什麼?可以減少訪問內存的次數。

壞處是什麼?失效需要失效很多層,一致性需要保證很多地方。

如果再來個L4應該和L3差不多,只是容量大,那為何不直接加大L3呢?不更好嗎。

仔細看看每個緩衝都有其特點。


有的。我的處理器是i5-6360u。有64m四級緩存。


成本。 IBM用了不少。

intel也用edram了


diminishing return


成本問題。在IBM和Intel伺服器級別的處理器上,四級緩存很常見。


成本,太佔位置了


沒有那麼多種緩存。


推薦閱讀:

Intel 第六代酷睿 帶來了哪些技術革新?
Intel C++ Compiler 編譯出的程序在 AMD CPU 上性能會很差嗎?
8700k等新一代u請問?
低電壓CPU在Turbo Boost之後與標準電壓同主頻的性能是否有明顯差異?
若AMD發布ZEN+VEGA架構的APU,會不會使I N兩家合作?

TAG:英特爾Intel | 中央處理器CPU | AMD | 緩存 | 體系結構 |