作者:超合金彩虹糖
(資料圖片)
最近準備來做個AMD這幾代內存模式的簡單入門,本文主要針對入門級新手,我已經對內容做了大幅度簡化了,希望小白們能夠看得懂
本文由于是偏科普向,所以不會照顧圈內某些人所謂的共識, 不然必遭后人恥笑,該怎么樣就會怎么評價,你們該怎么說留給你們自己背后去講。
在這之前需要先給幾個名詞做一些簡單解釋,那就是Infinity fabric、FCLK、UCLK、MCLK以及CPU頻率
CPU頻率應該不需要我多說,就是你CPU的核心頻率。
infinity fabric是AMD鏈接不同功能模塊的總線,是AMD這次崛起之路的奠基功能
像在Zen1時代,一個CPU die里面兩個CCX,這兩個CCX就是通過IF總線互聯的,此時IF總線還是片內互聯的狀態。直到現在Zen4乃至于未來的Zen5/Zen6,都會有infinity fabric的身影
infinity fabric一般簡稱IF,那么IF位寬就是這條總線的位寬,IF頻率就是infinity fabric總線的頻率
我們常說的FCLK其實就是IF總線的頻率,FCLK 1800MHz,那么IF總線的頻率就是1800MHz。FCLK和CPU的核心頻率是不一樣的,大家要注意區分。
MCLK就是內存的頻率,比如說DDR5 6000,這6000就是具體的速率,而由于內存是一周期2bit的輸出傳輸,所以MCLK對應的是3000,除以二就行了
而UCLK則指的是內存控制器的頻率,所以UCLK和MCLK息息相關,甚至可以說關系到你內存能效的表現
如果你的UCLK/MCLK是1:1,也就是我們常說的不分頻模式,此時效能最佳,也是在內存頻率發展不算很高的時候的默認 ,而如果你的UCLK/MCLK是1:2的模式了,也就是分頻模式,此時意味著你的內存控制器頻率下降了一半,會嚴重影響到內存控制器與核心之間信息交互的效率
那么1:4的模式就你們自行推斷吧。
Zen1時期的制程是GF 14nm,然后Zen+時期是12nm,也就是GF的14nm+
那時候AMD的內存控制器能力較弱,作為那個時代的親歷者,我仍然記得那時候的R5/R7基本上內存只能穩2666-3200,能穩超過3200頻率的幾乎是極少數,我記得大部分還是只能穩3000這個頻率,3200都見過不少人報錯
這里結合Zen1/Zen+回顧一下前面的內容。如果內存是3200頻率,那么意味著UCLK是1600MHz,如果是3000的內存頻率,UCLK就是1500,當時對于FCLK的頻率挖掘也不算深,內存也沒有分頻,所以當時的玩家也沒有對FCLK深度探索
而到了Zen2時期,AMD開始在消費級玩起了Chiplet,AMD將IO類模塊單獨拿了出來,用GF 12nm做成了一個單獨的IO Die,而CPU的主要計算模塊則單獨做了CCD,也就是今天Zen4的基本雛形
這之后CPU要訪問內存控制器,需要走IF總線跨die去訪問IO die,此時IF總線的表現就開始顯得重要了。
在這里需要和Intel的總線做個區分,intel的消費級采用的是ring總線
可以說啥都掛在這個ring總線上的,CPU核心、內存控制器還有核顯等一大堆東西都掛在ring總線,intel的核心要訪問內存控制器,只需要走ring總線就行了,所以ring總線的實際表現就成了關系到intel實際內存效能的主要環節之一
而AMD這邊核心要訪問內存控制器需要走IF總線(雖然Zen3/Zen4也有了一個Ring總線,但是僅限CCX內CPU核心與核心內互聯用),這一點到Zen4也是一樣的,
后續Zen5/Zen6應該也還是這樣
這里就有一個問題了,需要跨die走基板的信號頻率沒辦法做的太高,所以Zen2/Zen3時期的FCLK基本上只能穩定在1600-1900MHz之間,
而且AMD為了解決內存高頻上不去的問題,引入了IF總線與內存的分頻機制。
當內存頻率超過一定值時,ZEN2架構的銳龍處理器就會自動切換到內存/IF總線2:1分頻
比如說DDR4 4000的頻率,此時MCLK頻率是2000,FCLK和UCLK就只有1000了,如果以不分頻的標準來看,FCLK和UCLK應該要2000的頻率才對
當然不同主板可能有差異,有些異步之后的FCLK頻率會保持分頻前的數值
不過由于FCLK上不了這個頻率,但是又想實現4000這個頻率,就以降低實際效能為代價來實現這個目標了
在這個模式下因為FCLK頻率沒辦法推到太高的問題就被解決了,所以線程撕裂者平臺就先intel一把實現了四通道DDR4 4800
根據大量樣本來看,AMD官方這個所謂的內存頻率一定值的范圍大概在3200-3800之間
也就對應了1600-1900MHz的FCLK頻率,絕大多數Zen2/Zen3的CPU都只能跑3600-3800的頻率不分頻,極少數體質極好的可以實現1933MHz的FCLK頻率,從而實現3866不分頻,而一些體質爛的也就只能穩3200的頻率在用。
根據AMD的介紹,這個不分頻的區間,FCLK:UCLK:MCLK的比例為1:1:1,這就是不分頻的方案
比如內存頻率3600,MCLK就是1800,UCLK和FCLK都是1800。如果是3200的內存,那么MCLK、FCLK和UCLK都是1600MHz
而APU則不同,APU是單die設計
CPU核心經過IF總線訪問內存控制器不需要去走基板長距離跨die,所以4750G/5700G這些產品的不分頻上限就顯著更高,FCLK甚至可以達到2300MHz以上
這時候內存就順理成章可以實現4400以上不分頻了,上限顯著超過了非APU版。
從這些現象中可以得到結論,在AU內存的這整個一環節中,FCLK是那個瓶頸,如果能提高FCLK的頻率,那就能把不分頻的上限拉高
時間到了Zen4,AMD更換了全新的AM5插槽,CPU die升級到了5nm,IO die升級到了6nm,同時也放棄了DDR4內存的支持,全面支持DDR5
到這里就又有一個問題了,DDR5內存起步4800,而如果繼續按照Zen2/Zen3那一套1:1:1的模式來進行的話,那這DDR5時代就拉不上去了
因為如果要按照這個模式來,哪怕是4800的頻率,也會要求FCLK頻率達到2400MHz
而如果是DDR5 6000,這會要求FCLK頻率達到3000MHz,這顯然是超過AMD目前非APU版能力上限的
所以為了解決這個問題,Zen4時代就將1:1:1改成了2:3:3,也就是FCLK:UCLK:MCLK為2:3:3的比例,這樣就保證了UCLK和MCLK繼續能保持1:1
相較于原本1:1:1的模式,這個模式降低了FCLK的頻率,理論上來說效能就會下降
因為IF總線的頻率關系到你CPU核心訪問內存控制器的速度,這一段路的速度要是下去了,這會在很大程度上影響CPU訪問內存控制器的效率,而內存速度和內存控制器的速度大幅提高的時候,IF總線的頻率提升速度跟不上,也會拖整體的后腿。
最終在2:3:3的模式下,Zen4這一代內存頻率的上限大概就是6400了,此時FCLK的頻率為2133
MCLK和UCLK都是3200,不借助特殊設備的情況下我幾乎沒有看到過有穩定過測更高頻率的zen4了
當然這個2:3:3是EXPO下的參考比例,更貼切的描述應該是FCLK頻率:1:1
這里FCLK是被解放出來的那個數據,因為跟不上后面兩個參數的發展,所以FCLK的頻率是你能跑多高就算多高 。
在實際對比中你們就會發現同樣DDR5 6000 C30的內存,AMD的7000系列的帶寬表現就會遜色于intel平臺
這個現象在DDR4時代是沒見過的,DDR4時代一般頻率和時序一樣的時候,帶寬表現是差不多的
這也許是IF總線所帶來的局限吧,IF總線為AMD提供了高拓展的未來,實現了單CPU 32核到96核的擴展
甚至未來還會上128核,但同時總線速度的提升較為緩慢,尤其是需要跨die傳輸型號的時候,頻率實在是沒辦法做高
我個人猜想如果AMD想要讓FCLK頻率大幅提高的話,可能需要改新的布線設計和全新的基板
外置IO die這個設計AMD可能會繼續玩下去,那么就無法避免CPU核心跨die走基板長距離去訪問內存控制器
而更先進的布線設計以及制程升級可以改善這個問題,Zen4的FCLK頻率對Zen3的提升也許就是受益于此
如果下一代Zen5可以讓FCLK頻率提升到2400的話,那么內存頻率就可以提升到7200不分頻,而如果像當初Zen3延續Zen2的頻率那樣,繼續保持2000-2133的話,那下一代也只能6000-6400,這樣去面對intel未來可能會出現的XMP8000甚至更高頻率內存的沖擊,也許只能靠推廣X3D來輔助了,當然X3D也并不全是好處,這個可以自己挖掘一下。
以上就是臺式機銳龍的發展情況,下面來講幾個我個人測到的例外,所謂例外其實就是為他們各自的普通做了特殊優化的,和上面的情況有出入,基本是移動端的銳龍
首先是6nm工藝的RMT,這個系列相信大家也基本都知道
CPU是移動端zen3,但是GPU從vega升級到了RDNA2,然后支持了DDR5和LPDDR5內存。
去年我拿到了天選3,6800H+3060的配置,所以進行了一些測試,發現在DDR5 4800內存下,MCLK和UCLK是1:2的模式,MCLK是2400,UCLK的1200了
而FCLK的頻率是1800MHz,這個比例就變成了3:2:4,還是分頻的模式,最終AIDA64的CPU帶寬測試表現不太好
不過LPDDR5 6400內存下,GPU可用的memory copy這一項就比較高了,這一項改動倒是特別適合核顯發揮,因為對GPU來說延遲不太重要,copy帶寬非常重要
另一個是上筆記本的臺式機版銳龍,前段時間有幸短暫的測試過7945HX(ROG的冰刃7)
我發現7945HX雖然和桌面版的7950X是同核心,但是內存運行模式是有一點區別的,實際抓取運行時的頻率之后發現7945HX將2:3:3的模式改成了2:2:3
這次是UCLK的頻率和FCLK相同了,而MCLK的頻率繼續保持高頻,這倒是挺讓我意外的
這應該算半個分頻模式吧,因為這時候UCLK:MCLK的比例變成了1:1.5,沒完全變成1:2,但也不是1:1了,不過好在對比桌面端直接跑4800 C40以2:3:3的模式運行時并沒有啥落后
所以影響不算大,這個結果就僅供學習參考。
再往前的移動端我就沒有留下相關測試信息了,其實Zen4往前的無非就是分頻不分頻的玩法,具體比例就以實際測試為準就好,這里我還是鼓勵大家自己多測測數據,不要只知道看別人的數據,最好是要自己復現一下。
不過這里要打個預防針,如果你們測到這樣的表現也不要感到奇怪
這是正常的。換個角度想,這樣的設計思路是為了讓CPU頻率在壓力測試時盡可能的高,所以將總線頻率降低,這樣在應付一些特殊需求的時候是效果非常顯著的,建議intel也學一學。
行了,這次的小科普到這里就結束了,本文主要針對入門級新手,所以前面會寫的麻煩點,希望小白們都能看得懂,對這幾代AMD的內存運行模式有一個基本的了解。
標簽:
新聞排行
圖文播報
科普信息網 - 科普類網站
聯系郵箱:85 572 98@qq.com 備案號: 粵ICP備18023326號-39
版權所有:科普信息網 www.www44bkbkcom.cn copyright © 2018 - 2020
科普信息網版權所有 本站點信息未經允許不得復制或鏡像,違者將被追究法律責任!