Major Member
|
恩....人有錯誤就要承認
所以我翻了翻前面的文章
似乎真的沒看到1.5倍的說法
在這裡認真的像原PO道歉
==========================================================
不過 我想任何人看到這分隔線就知道我要開始長篇大論了.....
所以當然不能讓大家失望
閣下對我的[快取不是越大越好]抱有疑問
老實說這很正常 市面上每顆量產的CPU似乎都能藉由快取增大而提升效能
似乎也沒聽說過哪顆CPU因為快取增大而效能減低的
那 為什麼有個怪人上來說快取不是越大越好
快取4GB弄得跟記憶體一樣大豈不爽快?
基本上解釋是這樣的
首先 藉由前面的文章 我想看到這邊的都基本上知道了所謂的快取命中率
也就是我所要的資料有多少機會在這個快取之中
但是這邊有個問題[快取命中率可不可能到達100%]
基本上是不大可能 因為 [沒使用過的資料必定不在快取裡]
所以當我們第一次使用一筆資料時 快取必定MISS 這稱為[冷啟動失誤]
這個失誤[不會隨著你的快取增大而有任何變動]
唯一能夠降低這個失誤的方法是增大[快取區塊]的大小
注意 是[快取區塊大小]而非[快取大小]
所以從一開始就已經確定了一件事
[就算你無限的增大快取 命中率仍然會會到某值後不再增大]
再者 命中率的提升和快取大小的增長兩者間關係明顯的非線性
我們直接可以預期到的[隨著快取大小越來越大 增加 好比說1MB所能增加的命中率越來越少]
快取的增加(區塊大小等等其餘參數不變的狀況下)直接導致找出資料是否在快取中時搜尋時間變長
而且快取的大小直接影響到晶片的面積 當然也影響到成本
所以廠商當然也不蠢
只有在增加快取大小仍能提供合理效能增益時才會做增加快取的動作
也就是增加的快取大小不影響或微量影響延遲但提升的命中率所造成影響超越前者的狀況下才增加快取
所以當然世面上同架構 同頻率 同OOXX的產品快取大的想必比快取小的快
也因此 閣下提出的C2D軟體實測結果和理論本身不違背
當然 假如我有錢請Intel或AMD做個12吋披薩大的[CPU + 不知幾GB去了的快取]
再去量測其效能 想必比較能具有說服力
不過阮囊羞澀 沒法做到就是了
==========================================================
整篇重要的大概就只有幾句話
1.冷啟動失誤不會隨快取加大而減少
2.所以就算你快取夭壽大 還是有不可避免的MISS
3.而當其他MISS機會隨快取增大而減少時 冷啟動失誤在所有失誤中所佔的比率就變高了
4.廠商不會搬石頭砸自己腳(雖然最近某廠砸了兩次)
|