- 検証/原文●duck 編集●ハッチ
DDR5-6000MHz時、よく使われるタイミング例(Hynix A-die)
duck氏は最重要項目である「Primary Timings」からの調整を推奨している。設定例は以下のとおりだ。
- CAS Latency(tCL):28または 30
- DRAM RAS# to CAS# Delay Read (tRCDRD):32~34
- DRAM RAS# to CAS# Delay Write(tRCDWR):30~34
- DRAM RAS# PRE Time (tRP):基本的にはtRCDと同値か34
- DRAM RAS# ACT Time (tRAS):28または30(基本はtCL+tRCD)あるいは36程度にとどめる
Secondary Timingsは性能に大きく影響を与える項目から先にひとつずつ調べていく。Hynix A-dieはtREFIやtRFCの詰めに強いのが特徴なので、そこから調べていく。
- DRAM REF Cycle Time (tRFC)=6000MHzなら384~480、それより下
- DRAM REF Cycle Time Same Bank(tRFC_sb):通常のtRFCよりも低い値に設定できる。tRFCの70~80%程度の値
- DRAM Refresh Interval(tREFI)=できるだけ大きな値を入力していく65535またはそれ以上
- DRAM RAS# to RAS# Delay L (tRRDL):4~6
- DRAM RAS# to RAS# Delay S (tRRDS):4~6
- DRAM FOUR ACT WIN Time (tFAW):通常はtRRDSx4の数値。tRRDSが6なら24
- DRAM WRITE Recovery Time (tWR):24~48
- DRAM READ to PRE Time (tRTP):10~12
- DRAM CAS Write Latency (tCWL):tCLと同値。またはそれ以下に設定可能。(tCL30ならtCWLも30)
- DRAM WRITE to READ Delay L (tWTR_L): 通常16~24/ S (tWTR_S) 8~12
- DRAM Internal Write to Write Command Delay Time ( tCCD_L_WR ):12~16
- DRAM CAS to CAS Delay L (tCCD_L):8またはAuto
- DRAM CKE Minimum Pulse Width (tCKE):基本は(Auto)または1~4
上記は影響が大きい項目の「一例」を順番に書き出したもので、さらに残りのThird Timingsもバランスをとって詰めていく。一気に変えずにひとつづつ根気よく詰めて、ストレステストを繰り返して試験していくとしている。
Third Timings以降は、この時点で以下画像の黄枠のようにAUTO設定で、現在のレイテンシが表示されてるはずとのこと。ひとまず、この数値で安定してるという事になるので、黄枠内の値をお手本にしつつ、それぞれの数字を「ひとつづつ」更に小さく入力していく作業になる。

基本的に数字を小さくしていけば高速化するが、詰めすぎると逆効果の場合もある。使用用途に一番近いベンチマークの数字を見ながらバランスを崩さないTuningが最適解だとしている。
ひとつずつ数値を変えていって、 その都度ベンチやMemTestなどを走らせ確認する作業を繰り返す。気の遠くなるような作業だが、慣れてきて高速化を肌で感じられれば楽しくなること請け合いだろうとコメントしている。

XMPを活用して調整していく
ここまで紹介してきたのは、各項目の数値をひとつずつ手動で調整していく、いわばアナログな方法だ。しかし、基本的な考え方を理解できたなら、次はXMPなどを活用することで、より簡単かつ効率的に設定を進められる。

一度再起動して設定を反映させたら、各項目に自動設定された数値をチェックしてみよう。その数値をベースに、さらに詰めたい項目を手動で調整していけばOKだ。
自動設定を出発点に、手動調整でさらなる高速化を狙う。 これなら、すべての項目をゼロから設定するよりも、効率よくメモリチューニングを進められるはずだ。


コメント