為什麼英特爾和 AMD 的 CPU 緩存只有三級,而不做四級或者更多?
01-06
一句話解釋,緩存太佔地方,而且投入和回報不成正比,實在是不划算。
一張圖片就很明了了,三級緩存差不多佔據了兩個核心的面積,如果加上四級呢?五級呢?
要知道緩存容量都是急速遞增的,你看圖裡看不到L1和L2 Cache吧, 如果有四級緩存,單獨的緩存面積就比整個現有的CPU大。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兩家合作?