コア半減&メモリーレイテンシー抑制モードもある
なぜRyzen Threadripperの構造に触れるかといえば、今回Ryzen Threadripperのメモリーアクセスモードは「Distributed」と「Local」という2つのモードが用意されているからだ。デフォルトのDistributedモードは全メモリーを等しく扱うため、コアが2基あるメモリーコントローラーの中の遠い方にアクセスする場合、レイテンシーが犠牲になる。そこでコアが自分のCCXに近い方のメモリーのみにアクセスするLocalモードにすれば、レイテンシーは大きく改善する。
AMDはメモリーレイテンシーが効くゲームにはLocalモードが有効としているが、Localモードではメモリーコントローラーをまたぐようなメモリーアクセスが発生した場合、大きなペナルティーとなる。後のベンチでも示すが、万能のモードではないといってよい。
このDistributedモードとLocalモードの切り替えはOCツール「Ryzen Master」で随時行える(ただし再起動が必要)。さらに多コアのCPU環境を苦手とするゲームのために、コア数を半減させる「Legacy Compatibility」モードもRyzen Masterで設定可能だ。1950Xであれば4+4コア、1920Xであれば3+3コアとなるので、Ryzen 7 1800XやRyzen 5 1600Xに近い構成となる。
どのように無効化されるコアが選別されるかは明らかでないが、Legacy Compatibilityモードを使ってコア数を半減させてもメモリ搭載量は変化しないことから、2つあるCCXのペアのうち片方を無効化していると考えられる(CCX全体が無効になるとそれに付随するメモリーコントローラーも使えなくなるだろう、ということからの推測だが……)。
これらのモードはひとつひとつ手動で組み替えることもできるが、Ryzen Masterのウィンドー下端には「Creator Mode」と「Game Mode」という簡易的な切り替え機能が実装されている。前述のLegacy CompatibilityモードとDistributed/Localモードは次のような組み合わせになっている。
CPUコア:全コア使用可能
メモリー:Distributedモード
CPUコア:半数のコアのみ使用可能(Legacy Compatibilityモード)
メモリー:Localモード
今世に出ている多くのゲームはコア数よりもメモリーレイテンシーの方が重要なのでその2つを組み合わせたGameモード、そうでない場合はマルチスレッド性能とメモリー帯域を優先させたCreaterモードを切り替えて使おう……というのがAMDのメッセージである。
ただ、後で反例をひとつ示すようにGamerモードに切り替えたからといってどんなゲームも高速化する訳ではない。厳密にやるならCPUコア数とメモリーモードの4通りの組み合わせがどのゲームに合致するかを見極めていく必要があるだろう。
週刊アスキーの最新情報を購読しよう