處理器 AMD 表示 Ryzen 7000 的最佳記憶體頻率是 DDR5-6000

laudmankimo

高級會員
已加入
9/22/06
訊息
966
互動分數
95
點數
28
首先,一般說的DDR4-3733、DDR5-6800,這個「3733」和「6800」指的是transfer rate(單位MT/s),而DDR memory的bus clock rate會是transfer rate的一半,意思就是bus clock rate會分別是3733 / 2 = 1866.5MH和6800 / 2 = 3400Mhz

所謂gear1的意思是,CPU記憶體控制器的clock(IMC clock)與DDR memory的bus clock rate一樣快,IMC clock不用除頻
而Alder Lake的IMC clock極限大概就在2000~2200MHz而已,故DDR memory的bus clock rate如果超過2000~2200MHz的話,就需要開啟gear2,讓IMC clock變低頻

DDR5-6800因為bus clock rate為3400Mhz,超過2200MHz的上限,故必須開啟gear 2,讓IMC clock = 6800 / 2 / 2 = 1700Mhz

而Zen 4以DDR5-6000運作時,MCLK是可以到3000MHz的(只要AGESA別出問題的話),等同於直到DDR5-6000之前都可以gear 1的意思,比目前Alder Lake gear1只能DDR4-4400還高上不少,所以才會說Zen 4最佳記憶體頻率(應該說最佳transfer rate)是DDR5-6000,因為再往上的話MCLK也要除頻(gear2)了
cpuz裡可以看到DDR4-2666的頻率是1333這個沒問題 因為我知道它是雙緣觸發傳輸的 時脈的上升緣跟下降緣都會傳輸 這個在初代DDR記憶體發布前我就在電腦雜誌上看到過了 你上面列出來的資訊有2個我持懷疑 第一個是alderlake IMC clock得極限是2000-2200 這樣無法解釋大家在使用12代配DDR4的主機板的時候都使用DDR4-3600搭配GEAR1 也就是大家說的記憶體甜蜜點 你說12代IMC極限在2000-2200 則甜蜜點應該至少會是4000 哪裡搞錯了? 而ZEN4 DDR5-6000是甜蜜點再往上要除2? 那CPU鐵蓋下 不同的CCD跟獨立的IMC之間溝通的IF, infinity fabric頻率又會是多少? intel 這邊12代gear1極限在4000 而晚一年上市的AMD可以把INTEL這邊存在的極限IMC可承受的頻率MCLK一口氣從2000*2=ddr4-4000提高到3000*2=ddr5-6000的理由到底是什麼? 因為還沒上市我說可以就可以?我說我跑DDR5-6000是1:1是GEAR1就是GEAR1? 雖然很像在吵架但DDR4時代INTEL這個鐵蓋下一坨的CPU可以輕鬆的DDR4-4000到DDR4-4400(8代9代10代) 而AMD這邊只能3600運氣好的話可以到3800理由是IF(3000系列-5000系列,4000系列很難買) 到了DDR5時代就一口氣翻轉的理由是什麼? 我想知道的是這個 你雖然重新解釋了一堆我理解的東西但關鍵的地方都沒提到 為什麼AMD這邊MCLK可以到3000 實際上是DDR5-6000 為什麼AMD可以?
 
最後編輯:

6665kuishou

一般般會員
已加入
5/7/18
訊息
106
互動分數
31
點數
28
年齡
28
大部分用DDR4-3600可能是因為比DDR4-4000~4400價差不少,而且基本上transfer rate高也會造成延遲變高,有些延遲比頻寬影響更大的應用反而用DDR4-3600會比DDR4-4000~4400跑得快,當然反過來也有頻寬比延遲影響更大的應用,但把價格考量進來的話,綜合起來還是DDR4-3600比DDR4-4000好

另外,我搞錯了一件事情,amd cpu的記憶體控制器的頻率是UCLK才對,不是MCLK,MCLK是記憶體的頻率(bus clock rate)

infinity fabric頻率的話,infinity fabric頻率在到達上限之前,是和MCLK與UCLK掛勾,例如DDR4-3600,那麼FCLK:UCLK:MCLK就是1:1:1(三者都1800MHz),但假如烙賽一點的CPU可能FCLK上限就只到1800MHz了,此時硬把UCLK和MCLK拉成2000MHz的時候,就會看到FCLK:UCLK:MCLK = 1800MHz:2000MHz:2000MHz這種FCLK和記憶體頻率不同步的現象

而Zen 4的FCLK會是記憶體transfer rate的三分之一,意思就是DDR5-6000時FCLK:UCLK:MCLK=2000MHz:3000MHz:3000MHz,假如transfer rate硬要拉超過6000拉到6800,那可能就會看到FCLK:UCLK:MCLK=2000MHz:1700MHz:3400MHz,FCLK會卡在某個上限(而這上限可能就真的是2000MHz),其實Zen 4的FCLK上限相比Zen 3也沒高多少

至於為什麼Zen 4的UCLK可以一口氣從Zen 3的1800MHz變成3000MHz,原因之一應該是因為I/O Die製程從GF 12nm升級到TSMC 6nm,這兩種製程可差不少,也許你覺得提升超過50%很誇張,但到底是不是真的有辦法,三週後便知曉

反過來intel 11代跨到12代也是升了製程的,IMC clock卻沒有什麼提升,這反倒很奇怪,我是猜有沒有可能是IMC為了同時兼容DDR4&DDR5才造成這種現象
 
  • Like
Reactions: laudmankimo

laudmankimo

高級會員
已加入
9/22/06
訊息
966
互動分數
95
點數
28
大部分用DDR4-3600可能是因為比DDR4-4000~4400價差不少,而且基本上transfer rate高也會造成延遲變高,有些延遲比頻寬影響更大的應用反而用DDR4-3600會比DDR4-4000~4400跑得快,當然反過來也有頻寬比延遲影響更大的應用,但把價格考量進來的話,綜合起來還是DDR4-3600比DDR4-4000好

另外,我搞錯了一件事情,amd cpu的記憶體控制器的頻率是UCLK才對,不是MCLK,MCLK是記憶體的頻率(bus clock rate)

infinity fabric頻率的話,infinity fabric頻率在到達上限之前,是和MCLK與UCLK掛勾,例如DDR4-3600,那麼FCLK:UCLK:MCLK就是1:1:1(三者都1800MHz),但假如烙賽一點的CPU可能FCLK上限就只到1800MHz了,此時硬把UCLK和MCLK拉成2000MHz的時候,就會看到FCLK:UCLK:MCLK = 1800MHz:2000MHz:2000MHz這種FCLK和記憶體頻率不同步的現象

而Zen 4的FCLK會是記憶體transfer rate的三分之一,意思就是DDR5-6000時FCLK:UCLK:MCLK=2000MHz:3000MHz:3000MHz,假如transfer rate硬要拉超過6000拉到6800,那可能就會看到FCLK:UCLK:MCLK=2000MHz:1700MHz:3400MHz,FCLK會卡在某個上限(而這上限可能就真的是2000MHz),其實Zen 4的FCLK上限相比Zen 3也沒高多少

至於為什麼Zen 4的UCLK可以一口氣從Zen 3的1800MHz變成3000MHz,原因之一應該是因為I/O Die製程從GF 12nm升級到TSMC 6nm,這兩種製程可差不少,也許你覺得提升超過50%很誇張,但到底是不是真的有辦法,三週後便知曉

反過來intel 11代跨到12代也是升了製程的,IMC clock卻沒有什麼提升,這反倒很奇怪,我是猜有沒有可能是IMC為了同時兼容DDR4&DDR5才造成這種現象
傳輸率變高理論上不會讓延遲變高 因為記憶體能跑多快是按照ns計算的 ddr?-6000 cl40跟ddr?3000 cl20實際上是一樣的(反應時間) 但是後者不一定能跑前者高頻率 且送出了column address插入了20或40個時脈周期等dram ready後 後續的row address也送出後 爆發出來的data 是前者較多因為送出記憶體地址屬於額外開銷(overhead) 這是一個我偶爾會用的計算網站 給你參考 RAM Latency Calculator

手邊2018年買的一組patriot steel viper 8gb *2 記憶體套裝是ddr4-4000 19-19-19-??@1.35V 三星B-DIE 透過該網站算出來是9.5ns 送出column address後要送出row address需插入的等待時間是9.5ns 同公司出的更高頻率的4400的套裝若是同樣的參數19-19-19-??則算出來的時間是8.67ns 後者在aida64上測出來的memory latency時間會更低 更適合玩遊戲 如果沒有什麼gear1gear2的設定的話後者更快 但這實際上會被快取記憶體的性能給稀釋掉 詳情可看2017年1月初7700K上市初期湯姆硬體指南的詳細測試(應該找不到了) 大概的結論就是 記憶體的傳輸頻率大於CPU的TURBO頻率的最高頻的2/3 則對記憶體傳輸頻率敏感的遊戲與軟體提升的幅度開始下降(那是個組機的主流還停在DDR42400-2666的年代)
 
▌延伸閱讀