テストレポート
Ryzen Desktop 2000シリーズの自動クロックアップ機能「Precision Boost 2」「XFR2」とストレージ高速化機能「StoreMI」はどう使えばいいのか
そこで,テストレポート後編となる本稿では,Ryzen Desktop 2000シリーズで性能面のカギを握ると思われる自動クロックアップ機能「Precision Boost 2」と,コア温度の条件が許せばPrecision Boost 2の最大クロックを超えるクロックで動作させる「Extended Frequency Range 2」(以下,XFR2),そしてそれらとCPUコア温度の関係を主にチェックしていきたい。
また,Ryzen Desktop 2000シリーズと同時発表になったストレージ高速化技術「StoreMI Technology」(以下,StoreMI)の使い方も確認していこうと考えている。
なお,本稿でテストに用いるCPUの主なスペックは表1のとおりだ。
「Precision Boost」と別モノになるPrecision Boost 2の挙動
第1世代Ryzenで自動クロックアップが有効になるのは最大2スレッドとされる。よく知られているとおり,RyzenはSMT(Simultaneous Multi-Threading)により1コアあたり2スレッドの実行が可能だが,Windowsに限らず,現在のほぼすべてのOSは,可能な限りアクティブなスレッドを異なる物理CPUコアに割り当てるので,AMDが言う最大2スレッドは「2基のコアがアクティブのとき」と同義だ。したがって,第1世代のRyzenだと,3基以上のCPUコアに負荷が生じた場合には定格クロック動作になる。
一方,第2世代Ryzenが採用したPrecision Boost 2は,CPUコア温度とCPUコア電圧&電流量を監視して動作クロックを変えるというのが特徴である。Precision Boostのように「負荷がかかるコア数」で一律に判断されるわけではなく,負荷状況に応じてリニアに動作クロックが変化するというわけだ。
なお,クロックの制御幅は25MHz刻みで,これは第1世代Ryzenから変わっていない。
※お詫びと訂正
初出時,第1世代Ryzenのクロック制御幅を100MHzとしていましたが,25MHz刻みの誤りでした。お詫びして訂正します。
続いてはXFR2だが,第1世代Ryzenのうち,末尾にXの付いたモデルで採用しているXFRは,「コア温度の条件が許せば,Precision Boostを超えるクロックで動作する」というものだった。ただ,第1世代RyzenのXFRでは「2コアまで」というPrecision Boostの影響から逃れられない。
それに対し,第2世代Ryzenでやはり末尾Xのモデルで利用可能なXFR2だと,条件さえ揃えば,全コアがPrecision Boost 2の最大クロックを超えて動作するとのこと。実際AMDは,第2世代Ryzen搭載環境において,十分な冷却能力のあるクーラーを組み合わせることで,XFR2により最大7%もの性能向上が可能とアピールしていたりする。
というわけでまずは,実アプリケーションでPrecision Boost 2がどのような挙動を示すのか確認してみよう。
テストに用いたシステムは表2のとおりで,ドライババージョンなどはあえてテストレポート前編から変えていない。
ここでテストに用いるのは,CPUに負荷をかける典型的なアプリケーションである動画のトランスコードツールだ。具体的には,「ffmpeg」(Nightly Build Version N-86691-gc885356)を使ってH.264/AVCへのトランスコードを実行する。ffmpegは「-threads」オプションを使うことにより,起動するスレッド数を変更できるため,1(シングル)スレッドで実行後,実行するスレッドの数を2から順に2ずつ増やしながらトランスコードを行い,CPUが実行可能な最大数までスレッド数を増やしてテストを行ってみることにする。
HWiNFO64では各コアの動作クロックを得られるが,ここで注目しているのはブーストクロックなので,Ryzenの複数あるコアクロックのうち最も高いものをプロットしてグラフ化してみる。
ここで使うCPUクーラーはサイズ製の空冷式サイドフローモデル「MUGEN 5 Rev.B」だ。Ryzen 7 1800XとRyzen 5 1600XにはAMD純正クーラーが付属しないため,ここではサードパーティ製クーラーで統一することにした次第である。
まず,8コアのRyzen 7 1800XとRyzen 7 2700Xを比較してみよう。グラフ1,2はいずれもエンコード開始から240秒間の最大動作クロック推移をプロットしたものになる。
あらためて押さえておくと,両CPUの動作クロックは以下のとおりだ。
- Ryzen 7 1800X:定格3.6GHz,Precision Boost最大4.0GHz,XFR最大4.1GHz
- Ryzen 7 2700X:定格3.7GHz,Precision Boost 2最大4.3GHz,XFR2最大4.4GHz
それを踏まえてまずはRyzen 7 1800Xの動作クロック推移からだが,エンコード開始直後は8スレッド時や14スレッド時に4.1GHzへ到達しているため,これがXFRの効果と考えられる。つまり,グラフ1を見る限り,第1世代Ryzenでも,全コアに負荷がかかっていたとしてもXFRが機能する局面は生じているということになるだろう。
開始1分後くらい以降だとPrecision Boostを超えるクロックは観測されなくなり,スレッド数にかかわらず概ね3.7GHzで推移する。4スレッド時にちょこちょこと3.9GHz程度を記録したりもするが,時間が経つにつれ,定格より100MHz高い3.7GHzを示す時間が増大していく。
なら4.0GHzという最大クロック設定はいったい何なのかという話になるのだが,クロックの動きを観察していると,アイドル時にちょっとマウスを動かすなど,短時間の負荷が生じたとき,4.0GHzや4.1GHzへクロックが跳ね上がっていた。一方,今回のテストでも明らかになったとおり,長時間にわたって負荷のかかる処理だと,実行スレッド数を1まで絞っても,XFRの動作が見られなくなった後は4.0GHzに達することがないようだ。
それに対してRyzen 7 2700Xはどうか。グラフ2を見ると,グラフの形がRyzen 7 1800Xとはまるで異なることが見てとれる。
Ryzen 7 2700Xではトランスコードが始まると,3.0GHzからクロックが立ち上がった。トランスコードの開始を厳密に揃えることはできないため,グラフの立ち上がりタイミングにはややバラつきがあるものの,8スレッド時や14スレッド時に4.3GHz超えを瞬間的に記録していることは分かる。これがXFR2による最大クロックということになるはずだ。
最も負荷が軽い1スレッド時はXFR2やPrecision Boost 2の最大クロックに入りやすいと予想できるが,1スレッド時のグラフを見ると,4.3GHz付近に達している頻度それ自体に2スレッド時や4スレッド時とそう大きな違いはないようである。
ただ,2スレッド以上のスレッド数で実行した場合,2分程度経過すると最大クロックに入りにくくなるのに対して,1スレッド時では190秒付近に約4.3GHzへ達する挙動を見せている。負荷が低く,CPUコア温度の上昇が緩やかなために,時間が経過してもPrecision Boost 2の最大クロックに入るということだろう。
1スレッド時を除けば,2分程度経過する頃には上下動を伴いつつもおおむね一定のクロックで推移するようになる。ちょっと分かりにくいかもしれないが,ざっくりまとめると,1,
いずれにしても,第1世代と第2世代のRyzenでは,動作クロックの制御法が「別物」と言っていいほど変わっているのが分かる。Ryzen 7にとって標準的な16スレッド実行時で大雑把に比べると,Ryzen 7 1800Xは3.7GHzで動作するのに対してRyzen 7 2700Xは4.0GHz付近で動作するので,CPUアーキテクチャが同一であっても約8%の性能向上が得られる理屈になる。
カタログスペックにおける最大クロック比は2.5%しか違わないにもかかわらず,それ以上の性能差が生じるのは,これが理由と見ていいのではなかろうか。
続いては6コアのRyzen 5 1600XとRyzen 5 2600Xを比較してみよう。結果はグラフ3,4のとおりで,ここではスレッド数を1,そして2から12までは2刻みで変化させ,最大クロックをプロットしている。
Ryzen 5 1600Xのスコア傾向は端的に述べてRyzen 7 1800Xと似たものになっているが,見比べると,XFRの最大クロックである4.1GHzへ入る頻度はRyzen 7 1800Xよりも高いようだ。2コアが無効になっている分だけ,Ryzen 7 1800Xに対して熱的,電力的に余裕があるためだろう。
2スレッド条件でXFRの最大クロックに入るのはトランスコード開始後2分過ぎくらいまで。3分を超えると最大クロックに入ることはほぼなくなり,定格クロックより100MHz高い3.7GHz前後で推移するようになる。
一方のRyzen 5 2600XはRyzen 7 2700Xに似ているのだが,注目したいのは12スレッド実行時でも4GHzを超えて推移する点だ(グラフ4)。こちらもRyzen 7 2700Xと比べて2コアが無効化されている分だけ,熱的,電力的に余裕があるのが理由だと考えられる。
つまり事実上,Ryzen 5 2600Xの動作クロックは,前世代のRyzen 5 1600Xより300MHz以上高いということになる。先のレビュー記事でRyzen 5 2600XはRyzen 5 1600Xに対して性能向上が著しいのが分かっていたが,原因は実動作クロックの違いにあると見てよさそうである。
CPUクーラーで動作クロックはどれだけ変わるのか
以上の結果から,Ryzen Desktop 2000シリーズのPrecision Boost 2とXFR2は,第1世代Ryzenとは制御方法も得られる結果も異なると言える。一方,テストレポート前編で明らかになっているとおり,クロックあたりの性能でRyzen Desktop 2000シリーズは第1世代Ryzenと大した違いがない。となるとユーザーにとって重要なのは「いかにしてPresicion Boost 2やXFR2を活かすか」ということになる。
本稿の序盤でも触れたように,Precision Boost 2とXFR2はCPUの消費電力やコア温度といったパラメータによって制御されている(ようだ)。消費電力のほうは半導体製造時の個体差――いわゆる「当たり外れ」――に左右されてしまうので,ユーザーのほうでどうこうできるものではないが,コア温度のほうはCPUクーラーの性能を上げるという形で,ユーザー側でも対策が可能なはずだ。
ということでここからは,CPUクーラーを変えることでRyzen Desktop 2000シリーズの性能にどのような違いが生まれるかを確認してみよう。
CPUクーラーと性能の相関を探るということなので,このパートでは発熱量が大きいRyzen 7 2700Xを主に使用してテストを行う。
1677万色表示に対応するLED搭載のWraith Prism。Ryzen対応マザーボードの多くが搭載する「5050 RGB LED」対応端子にクーラー付属のケーブルを接続すると,マザーボードメーカーが提供するツールからLEDの色設定を行える仕様だ。別途,AMDもWraith Prism用のRGB LED制御ユーティリティを提供していたりする |
本文ではWraith Spireとしているが,正確には1677万色表示に対応するLEDイルミネーション機能が付いた「Wraith Spire with RGB」をテストに用いている。こちらも5050 RGB LED対応端子に接続することで色の制御が可能だ |
H150i PRO RGB。今回はポンプの回転数を最大で固定して利用している。。Corsair製ツール「iCUE」からLEDイルミネーションの設定やポンプの回転制御などを行える |
テストに用いるアプリケーションは前段に続きffmpeg。最大クロックの推移を追うためのアプリケーションもHWiNFO64で変わらない。スレッド数は16,つまり8コアCPUの全コア全スレッドに負荷をかけることになる。
前段同様トランスコードの開始と終了のタイミングを揃えることができないので,ちょっと分かりにくいかもしれないが,グラフ5はCPUクーラーごとの最大動作クロック推移を追ったものだ。
どのクーラーを組み合わせた状態でも,トランスコードの開始時と終了時に激しくクロックが上下する。
トランスコード開始時において上下動が顕著なのはWraith PrismのLow設定で,3.0GHzと,XFR2の最大クロックになる4.3GHzと3GHzの間で激しく揺れ動いている。
これは,Wraith PrismのLow設定だと,ヒートシンクの熱容量(=ヒートシンクの温度を上げるために必要な熱量)は大きい一方,フィンを流れる空気流量が少ないのが原因だと筆者は考えている。XFR2の最大クロックに上がりはすれど,空気の流量が少ないため,ほどなくCPU温度が閾値を超えて3.0GHzに戻る。するとCPU温度が下がりまたXFR2のクロックに……といった動作を繰り返している可能性が高そうだ。
なお,一瞥しただけだと,Wraith PrismのLow設定でトランスコード開始直後は頻繁に4.3GHz超を記録するので優秀そうに見えるが,同時に3.0GHzへも頻繁に落ちているので,ここでエンコードの処理性能を推し測るのは避けてほしい。
トランスコード終了時におけるクロックの上下動もXFR2やPrecision Boost 2制御関連の挙動と思われる。今回のテストでは,すべての条件で負荷から解放されると動作クロックが跳ね上がる挙動が見られたので,CPUからの発熱量が減ると瞬間的にXFR2のクロックへ突入する動作が起こるのではないかと見ている。
動作クロックが落ち着く開始3分後以降ではっきり分かるのは,Wraith Spireのみ3.9GHzを切っており,他のクーラーより明らかに低いこと。Wraith Spireは対応するTDP(Thermal Design Power,熱設計消費電力)が95Wまでとなっているので,TDPが105Wに引き上げられたRyzen 7 2700Xを前にした場合は能力不足というわけである。
さて,先ほどWraith PrismのLow設定について語ったときにもお断りしたとおり,グラフ5だけで,「トランスコード処理速度にCPUクーラーが与える影響」を読み取るのは難しい。開始3分後以降における動作クロックの推移を見る限り,Wraith Spire以外のクーラーに大きな違いはないようにすら思える。
そこで,テストスレッド数を変えながら,CPUクーラーの5条件でトランスコードの所要時間を比較してみることにした。ここでは1スレッドと,2〜16スレッドを2スレッド刻みで切り換えた状態とで,それぞれのトランスコード時間を計測する。
極めて時間がかるテストなので,今回は,バッチファイルを作成し,連続実行することにした。スレッドを切り替えてエンコードを開始するまでのインターバルは5分に設定している。どのクーラーでも2,3分でCPU温度は下がり切るので,CPU温度という観点から言えば5分のインターバルで十分だろう。
結果がグラフ6である。
所要時間を見るグラフなのでバーは短いほど高速に処理を終えていることを示すが,実のところ筆者は,テストを行う前,シングルスレッド時にCPUクーラーの性能差が最も出やすいのではないかと推測していた。CPU負荷が低いためにXFR2の最大クロックに入りやすく,かつ,XFR2の条件を左右するCPUコア温度の影響を受けやすいだろうと考えていたからである。
だが結果はそう単純ではなかった。シングルスレッド設定時にトップを取ったのはWraith PrismのHigh設定で7316秒,2番手が同Low設定の7342秒。冷却性能が高いと思われるH150i PRO RGBは7373秒でWraith Spireより1秒速いだけだ。MUGEN 5 Rev.Bは7566秒と最下位に終わっており,冷却性能がスコアへきれいに反映されているとは到底思えない。
しかし,スレッド数が増えるにつれてクーラーの性能差がはっきりしてくる。原理的に全コアへ1スレッドが割り当てられる8スレッドではMUGEN 5 Rev.Bが1761秒でトップ,2番手はH150i PROの1763秒,Wraith Prism勢は1770秒台,そしてWraith Spireが1788秒で最下位となった。
16スレッドまで概ね似たような順位で推移し,16スレッドだとMUGEN 5 Rev.Bの1101秒がトップ,2番手がWraith PrismのHigh設定,3番手がH150i PRO RGB,Wraith PrismのLow設定,最下位がWraith Spireという順になっている。最下位のWraith SpireとトップのMUGEN 5 Rev.Bの差は約30秒とかなり大きい。
では一体何が起きているかだが,まず動作クロックの推移を見てみよう。グラフ7〜9は,スレッド数を1,8,16へ指定したときの,テスト開始後2分間にわたる最大動作クロックの推移を追ったものだ。
シングルスレッド設定時は負荷が低いため,どのクーラーでも4.1GHz前後の動作クロックで処理が進む(グラフ7)。XFR2で4.2GHzに達する頻度はWraith PrismのLow設定でなぜか高く,これがシングルスレッド設定で高いスコアを示した理由だと思われるが,いずれにせよ,クーラーによる動作クロックの違いはあまり大きくない。
シングルスレッドだと負荷が低く,CPUの発熱も小さいためにCPUクーラーの性能差が出てこないのだろう。代わりに別の要因,たとえばバックグラウンドプロセスの負荷といったものがエンコードの速度に大きな影響を与えるのではないかと推測している。
グラフ8に示した8スレッド設定時だと状況が変わり,エンコード時の動作クロックはH150i PRO RGBが最も高くなる。4GHzを超えるクロックでエンコードをこなすのはH150i PRO RGBのみだ。ただし,どういうわけかH150i PRO RGB利用時はXFR2のクロックに入る頻度が低い。
理由はなんとも言えないが,XFR2で4.4GHz付近に到達するMUGEN 5 Rev.Bの挙動を見ると,3.0GHzまで動作クロックが落ちてもいる。前述したとおり,XFR2の最大クロックに移った後,CPU温度が閾値を超えて一時的に3.0GHzにまで下がるという制御が入るためだろう。
一方,H150i PROは,最大クロックへ達することがない代わりに3.0GHzまで落ちることもないという挙動になっている。なぜそうなるかは正直よく分からないのだが,クーラーによって挙動が変わるのは確かと言えそうだ。
トランスコード実行時の動作クロックはH150i PRO RGBが有意に高いので,トップスコアを示してもいいと思うのだが,そうなっていないのはやや不思議だ。XFR2が機能しなかったことが原因という可能性はあるだろう。
16スレッド時も安定してやや高めのクロックで推移するのはH150i PRO RGBだった(グラフ9)。一方,やや低めのクロックで推移するのがWraith Spireである。Wraith Spireでは冷却が追いつかず,温度が上昇して,動作クロックの抑制につながっているのだろう。
それ以外のクーラーはさほど違いがないようだ。
ではこのときのCPU温度はどうなっているのだろうか。発熱が最も大きくなると考えられる16スレッド設定時に,HWiNFO64からTcase(CPUのパッケージ温度)の推移を追ったのがグラフ10だ。ここでは参考までに,Ryzen 7 1800XにMUGEN 5 Rev.Bを取り付けた状態のスコアも併載しておこう。
グラフを見ると,CPU温度を最も抑えることができているのはH150i PRO RGBで,エンコード時に77〜78℃程度。次点がWraith PrismのHigh設定で79℃前後,3番手はMUGEN 5 Rev.BとWraith PrismのLow設定で82℃前後となり,そしてWraith Spireでは95℃弱まで上がっている。Wraith Spireの場合は90℃を軽く超えているため,熱によるスロットリングが生じ,16スレッド時にクロックが抑えられているのはまず間違いない。
簡易液冷クーラーであるH150i PRO RBB搭載時のCPU温度は80℃を下回り,動作クロック推移を追ったときに動作クロックが高めに推移することとも整合性が取れている。だが,肝心のエンコード時間にそれが反映されないのが難しいと言うか悩ましいところだ。
また,意外に温度が上がっている印象なのがMUGEN 5 Rev.Bだが,トランスコード時間は決して劣っていないので,80℃台で抑えることができていれば,処理性能にはさほど変化がないのかもしれない。
なお,Ryzen 7 1800Xと比べると,Ryzen 7 2700XはTcaseがざっくり20℃高い。TDPが上がっているのでやむを得ないとはいえ,Ryzen 7 2700Xは第1世代Ryzenの8コア16スレッド対応モデルと比べて熱設計的にはやや扱いづらくなっている。だからこそAMDは,より性能の高いWraith Prismクーラーを開発し,製品ボックスへ同梱させることにしたのだろう。
余談気味に続けておくと,Ryzen 7 2700XやRyzen 5 2600Xは第1世代Ryzenの「X」付きモデルと同様,サーマルダイオードの測定値にオフセットを設けてあった。そのオフセット値はきっちり60℃とかなり大きい。
下に示したスクリーンショットは,Ryzen Desktop 2000シリーズに非対応だった「Core Temp」(Version 1.11)とAMD公式の情報取得&カスタマイズツールである「Ryzen Master」(Version 1.3.0.0623)とでCPU温度を比較したものだ。温度表示が約60℃ズレているのが見てとれるだろう。
念のためお伝えしておくと,Core Tempはバージョン1.12以降でRyzen Desktop 2000シリーズに対応しており,オフセットされたCPU温度を取得できる。
Ryzen 5 2600XのCPU温度も知りたいという読者もいるはずなので,MUGEN 5 Rev.Bを用いて計測した結果をグラフ11に示しておこう。
CPUクーラーを揃えたケースで,Ryzen 5 2600Xの温度はRyzen 5 1600Xに対して約17℃高い。Ryzen 5 1600Xに対してRyzen 5 2600Xの性能向上率はかなり大きいので,おおむね納得できる範囲といったところか。
以上,Ryzen Desktop 2000シリーズにおける冷却と動作クロック,温度の関係を見てきた。CPU温度を低く抑えることができる簡易液冷のH150i PRO RGBは,他のクーラーよりも高いクロックで動作することが確認でき,高性能なクーラーを組み合わせることでCPUの動作クロックを高めに維持できることは間違いないようだ。
だが,トランスコード性能といった分かりやすい指標では,クーラーによる有意な違いが出づらいというのが結論になりそうでもある。前述のとおり,AMDは高性能なクーラーを使うことで最大7%の性能向上が得られるとしているのだが,実アプリケーションでそこまでの違いを出すのは難しいのではなかろうか。
CPU温度だけでなく,シリコンの当たり外れといったユーザーが手出しできない部分も,高性能なクーラーの恩恵を得られやすいかどうかを左右するのかもしれない。
StoreMIの実用性を調べてみる
4Gamerでは以前,EnmotusがRyzenプラットフォーム向けとしてリリースした有償のストレージ高速化技術「FuzeDrive for Ryzen」を紹介したことがあるが,結論から先に言うと,StoreMIは,X470マザーボードのユーザーに向けた無償提供版FuzeDrive for Ryzenである。
「SSDやメインメモリをHDDのキャッシュとして用いることで,システムが搭載するストレージの高速化を図る」というアイデアは,決して目新しいものではない。SSDの容量単価が高かった数年前のほうが,むしろ選択できる技術は多かったと言ってもいいくらいだ。最近だと,Intelが「Optane Memory」で同種の技術を一般PCユーザーへアピールしていたりする。
さて,StoreMIを利用するために必要なのは,最低限,以下の3点となる。
- X470チップセット搭載マザーボード
- 高速化したいHDD
- キャッシュとして使うSSD(もしくはOptane Memory)
ちなみに,FuzeDrive for AMD Ryzenには,19.99ドルの「FuzeDrive Basic」,59.99ドルの「Fuze Drive Plus」という,2つのグレードがある。
手軽に利用できるFuzeDrive Basicはキャッシュ用のSSDとして128GBまでの容量をサポートし,SSDのインタフェースはSerial ATA(以下,SATA)6GbpsとPCI Express(NVM Express)の双方に対応する。また,DRAMキャッシュ「FuzeRAM」として確保できるメインメモリ容量は2GBだ。
Fuze Drive Plusは容量1TBまでのキャッシュ用SSDと,4GBのFuzeRAMを利用できる。
インストーラの見た目は先のFuzeDrive for Ryzenレビュー時からは変わっているものの,基本的なインストールの方法はFuzeDrive for Ryzenから変わっていない。
StoreMIの仕様と要件がまとまったスライド。StoreMIの仕様はFuzeDrive Basicに準じるが,利用できるSSDの容量は最大256GBに拡大となった |
「SSDにOSと一部のアプリをインストールし,容量が大きなゲームは大容量のHDDにインストールする」というのがよくある構成だが,StoreMIならSSDとDRAMをHDDのキャッシュとして利用できる |
StoreMIをインストールするとタスクトレイに「StoreMI」が常駐する。基本的な設定はFuzeDrive for Ryzenから変わっていないが,簡単におさらいしておこう。
FuzeDrive for Ryzenと同様にStoreMIでも,SSDとFuzeRAMによって高速化したHDDを「TierDrive」と呼ぶ。インストール直後はこのTierDriveが未設定なので,まずはStoreMIの設定パネルをタスクトレイから呼び出して作成を行うことになる。
下に示したのがStoreMIの設定パネルだ。[Create Bootable StoreMI]は,HDDをシステムドライブとしている環境で,それをStoreMIで高速化してTierDrive化するためのものである。[Create Non-Bootable StoreMI]は,非システムドライブとして利用中のHDDをSSDとFuzeRAMで高速化してTierDrive化するためのボタン,[New Non-Bootable StoreMI]はブランクのHDDとSSDを使って新しくTierDriveを作るためのボタンとなる。
テスト機はシステムドライブとして別のSSDを使っているため,[Create Bootable StoreMI]ボタンのほうは意味がない。また,使用中のHDDもないため,今回はブランクのHDDとSSDを別途用意したうえで,[New Non-Bootable StoreMI]ボタンをクリックすることになる。
すると,左下のようなダイアログが表れ,容量2GBのFuzeRAMを有効にするか否かを選択できるようになる。デフォルトは「Disabled」(無効)だ。FuzeRAMはTierDrive構成後にStoreMI設定パネルの[Change Settings]ボタンから変更できるので,ひとまずはデフォルトのまま[Create]ボタンを押して先へ進もう
なお,ブランクのHDDとSSDを使ってTierDriveを構成した場合,未フォーマットのDドライブ――システム構成次第ではEドライブ以降になるが――ができる。できあがったDドライブはもちろん「普通の」ドライブとして利用でき,「ディスク管理」から複数パーティションに分割することも可能だ。
なお,StoreMIではHDDとSSDの合計容量をTierDriveの容量として利用できる。StoreMIではTierDriveの中でアクセスが多いデータを解析してSSDに移動させることで高速化を図る仕組みを採用しているためである。
というわけで今回は,StoreMIを使っての高速化にどんな組み合わせがいいのかという点を調べてみよう。
おそらく多くの読者は「HDDのキャッシュとして使うSSD」に多くの予算を投下したくないと考えていると思う。十分な予算があるなら,それこそ容量2TBクラスのSSDをゲーム専用に増設してしまったほうが話は早いからだ。
そのときの現実的な選択肢となるSSDは,
- 高速だが容量が小さく,安価なもの
- 相対的に速度の低い旧世代品だが,容量が相応に大きく,安価なもの
あたり,具体的には,容量32GBのOptane Memoryあたりは1万円以下で購入できるので,1.のほうはこれが適任だろう。2.は読者の手元で“予備役”入りしたようなSerial ATA(以下,SATA)接続型モデルがベターではなかろうか。
以上を踏まえ,今回はキャッシュ用SSDとして,容量32GBのOptane Memory(型番:MEMPEK1W032GAXT,以下 Optane 32GB)と,Samsung Electronics製でSATA 6Gbps接続となる「SSD 750 EVO」(製品型番:MZ-750120B/IT)の容量120GBモデルを用意した。
高速化と対象とするHDDは東芝製で3.5インチ,容量3TB,回転数7200rpm仕様の「MG03ACA300」だ。
今回のシナリオは,「CドライブをSSDとし,ゲーム用のDドライブをStoreMIで高速化する」というものになる。そのとき,容量2GBのDRAM Cacheを有効化するかしないかの違いも見る。
StoreMIの結論は「速度よりも容量重視」
以下,テストでは以下の5パターンでテスト結果を比較していくことになる。テストに用いるアプリケーションは4Gamerのストレージテストで定番の「CrystalDiskMark」(Version 6.0.0)と「PCMark 8」(Version 2.8.704)で,キャッシュ構築の整合性を取るため,すべてテストは「Crystal
- HDD単体
- HDDとOptane 32GBの組み合わせ(以下,HDD+Optane 32GB)
- HDDとOptane 32GBの組み合わせに,DRAM Cacheを有効化した状態(以下,HDD+Optane 32GB+DRAM 2GB)
- HDDとSSD 750 EVOの組み合わせ(以下,HDD+SSD 120GB)
- HDDとSSD 750 EVOの組み合わせに,DRAM Cacheを有効化した状態(以下,HDD+SSD 120GB+DRAM 2GB)
まずはCrystalDiskMarkからだ。4GamerではCrystalDiskMarkを「テスト回数9回,テストサイズ8GiB」という設定で5回連続実行し,その平均をスコアとして採用することにしている。
グラフ12はQueue Depth(以下,QD)=32,スレッド数(以下,T)=1という条件における逐次アクセスのテスト結果をまとめたものだ。キューにコマンドを先送りすることでストレージ性能を引き出すことができるテストの結果と考えていいだろう。
読み出しの最高スコアを示したのはHDD+Optane 32GBで1413MB/s,次点はHDD+SSD 120GB+DRAM 2GBの879MB/sとなった。
ここで疑問に思うのがHDD+Optane 32GB+DRAM 2GBのスコアだと思う。この時点で結論めいたものを持ち出す必要が出てきてしまうのだが,前述のとおり,HDD+Optane 32GBでテストを行っていくと,最初は快調なのだが,徐々にHDDのアクセスが激しくなり,PCMark 8まで終わって,DRAM Cacheを有効化した時点ではほぼHDDのアクセスが止まらない状態になっていた。StoreMIのキャッシュ容量が32GB+2GBしかないため,テストを進めるにつれてHDDへのキャッシュフラッシュが頻発していたことは間違いない。
キャッシュフラッシュが頻発しているということは,Optane Memoryに十分な空き容量が確保できなくなっていることと同義である。HDD+Optane 32GB+DRAM 2GBの逐次読み込み584MB/sという成績はキャッシュフラッシュが頻発している状況下におけるもので,結果的にSATA 6Gbps接続のSSDを併用した場合のスコアを下回ったというわけである。
ここでStoreMIをいったん無効化してHDD+Optane 32GB+DRAM 2GBでTierDriveを構成し直せば,キャッシュフラッシュが頻発することなくテストが実行できたかもしれない。そうしようかと思わないでもなかったが,SATA 6Gbps接続のSSD 120GBでも同じ方法,同じ手順でテストを行っており,それとスコア差が出ているのは紛れもない事実だ。HDD+Optane 32GB+DRAM 2GBの成績を底上げするためにテスト方法と手順を変えるのはいかがなものか,という話もあるだろう。少し悩んだが,本稿では「こういうものである」ということで,ありのままの形で結果を示すことにした次第だ。
話を戻すと,逐次書込みではHDD+SSD 120GBがトップ,2番手がHDD+SSD 120GB+DRAM 2GBとなった。DRAMを使用したときに逐次書き込みのスコアが低いのは,DRAMキャッシュの容量が小さいために,頻繁なキャッシュフラッシュの処理が余計な負荷になってしまったためだと推測される。
また,Optane Memoryの逐次書込みのスコアがSSD 750 EVOを使用した場合を下回るのは,おそらく容量が少ないためにHDDへの書き出しが発生するためだろうと思われる。
続いて,QD=8,T=8という,条件で実行したランダムアクセスの結果がグラフ13だ。複数のスレッドでランダムアクセスを行うことでマルチプロセッサ環境下での性能を見るテストの結果という理解でいいだろう。
ここで,ランダム読み出しはHDD+Optane 32GBが900MB/sを超える好成績を収めているものの,「この時点ではOptane 32GBが好調だった」ことを考慮する必要がある。実際,調子を落としたHDD+Optane 32GB+DRAM 2GBでは「StoreMIが機能していないのではないか?」と思われるほど散々なスコアになってしまっている。HDD+Optane 32GB+DRAM 2GBの構成で前述のとおりキャッシュフラッシュが頻発しているための結果であり,これはこういうものだと本稿では結論付けておきたい。
一方,SSD 750 EVOを使用したテスト条件ではHDD+SSD 120GBのほうがHDD+SSD 120GB+DRAM 2GBよりも読み出し,書き込みとも高いスコアになった。QD=8,T=1というランダムアクセスではDRAMキャッシュが有効に機能していないことが窺える。
グラフ14はQD=32,T=1という条件で実行したランダムアクセスの結果だ。シングルスレッドでコマンドキューを用いた古典的なランダムアクセスのテストの結果と言っていい。
スコアの傾向自体はおおむQD=8,T=8と同じながら,HDD+Optane 32GBとHDD+SSD 120GBのスコア差が詰まったのが特徴的なところだ。
Optane Memoryは低遅延でコマンドの処理が速いことが特徴とされる。QD=8,T=8のような条件で複数スレッドからコマンドを送ると遅延の少ないOptane Memoryがより有利になるわけだが,Tが1でかつキューに32のコマンドを先送りするような使い方だと,その優位性は大きくないということかもしれない。
QD=1,T=1という条件で実行したランダムアクセスの結果がグラフ15となる。「シングルスレッドで,ストレージにコマンド先送りもしない」という条件だが,Windowsの通常のオペレーションではこの種のアクセスが最も多く,それだけにQD=1,T=1の成績がWindowsの快適さを左右するとも言われている。
ここでは読み出し,書き込みともHDD+Optane 32GBが好成績を収めている。前述のとおり,Optane 32GBはコマンド実行の遅延が少ない。コマンドの遅延が大きなウエイトを占めるQD=1,T=1という条件だと,Optane Memoryの強みが最大限に発揮されたというわけだ。
ただ,やはりOptane 32GBは容量が小さいことが懸念事項となっており,DRAMを組み合わせた場合のスコアはまったく冴えない。HDDへのキャッシュバックが足を引っ張っているのだろう。
CrystalDiskMarkのスコア概観してみるとHDD+Optane 32GBは好成績を残すものの,DRAMを組み合わせた場合のスコアがひどすぎる。その理由は先に述べたとおりで,DRAMを組み合わせたときにはHDDアクセスが頻発していたためだ。
一方,HDD+SSD 120GBの組み合わせは,HDD+Optane 32GBとまったく同じ条件でテストしているにもかかわらず,CrystalDiskMarkで安定的なスコアを残している。FuzeRAMを組み合わせるとランダムアクセス系のスコアが落ちるので,FuzeRAMを使うか否かは続くPCMark 8のテスト結果も合わせて考える必要があるだろう。
というわけで,PCMark 8の「Storage test」を実行してみたい。4Gamerの「いつもの」テストでは「Extended Storage」をSSDの評価に用いているが,Extended StorageはSSD向けのテストだ。今回はHDD単独のテストも含んでおり,HDD単体だとExtended Storageの実行に数日から1週間はかかるうえ,下手すると終わらないままエラーになったりもするため,今回はStorage testのみを実行した。
総合スコアはグラフ16,テスト実行時の平均帯域幅はグラフ17のとおりだ。
結果を見ると分かるように,ここではHDD+SSD 120GB+DRAM 2GBがトップの成績を収めた。総合スコア4000代後半,平均帯域幅129MB/sという成績は初期のSSDと同程度で,かなり良好と言っていい。
HDD+SSD 120GBのスコア4000台も優秀で,少なくともHDD単独では決して到達できないスコアである。DRAM Cacheを組み合わせずHDD+SSD 120GBのみで使うのも悪くない運用の仕方だろうと思う。
一方,Optane 32GBを組み合わせた状態はまったく冴えない。HDD+Optane 32GBの設定でStorage testを実行すると,途中から激しいHDDアクセスが始まり,HDD単独利用時とさして違わないスコアに落ち込んでしまった。ストレージに対して負荷が高い処理を行うと容量32GBでは足りず,StoreMIが十分に機能できないことがよく分かる。
本段落の中途で述べたとおり,StoreMIで重要なのはSSDのインタフェースや速度性能ではなく,容量である。幸いなことに,本稿で使った容量128GBクラスのSATA 6Gbps接続型SSDなら数千円で購入できるため,それほど抵抗なく導入できるのではなかろうか。
ところで,StoreMIの導入やアンインストールはバックアップを行わずにできるのだが,TierDriveは特殊な一種の仮想ドライブであるがゆえに,特定のソフトウェアで問題が起きることがある。そのため,運用には十分な注意が必要だ。
とくに相性問題が出る可能性が高いのは,ストレージのS.M.A.R.T情報を読みにいくシステム情報ツールの一部で,たとえば本稿の前半で使用したHWiNFO64をStoreMI構成下で使うのは非常に危険だったりする。
実を言うと筆者は,StoreMIの元になっているFuzeDrive for AMDを使用している最中にHWiNFO64を実行した結果,ドライブの内容をすべて失うという相当に手痛い経験をしていたりもする。HWiNFO64とFuzeDriveを組み合わせた場合の不具合はその後,公式サイトにもKnown Issuesとして掲載されたので,筆者の環境固有の問題というわけではない。
そうなると当然,StoreMIが有効なシステムでHWiNFO64を実行すると危険ということになる。上のリンク先にもあるとおり,HWiNFO64の「Disable Drive Scan」を有効化しておかないと貴重なデータを失う恐れがある。筆者と同じような目に合わないためにも注意してもらえれば幸いだ。
また,そうした相性問題に向けた転ばぬ先の杖としてTierDriveの内容は定期的にバックアップを取っておきたいところだが,特殊なドライブだけにディスクイメージのバックアップを行えない点も留意しておきたい。「Acronis True Image」や「EaseUS ToDo Backup」といったツールでバックアップを行うにあたっては,ディスクイメージではなく,ボリュームのバックアップ(≒ファイルのバックアップ)しか行えないのである。
つまり,何らかのトラブルが生じたときにバックアップから起動イメージを復旧できないので,少なくともこの問題が解決するまでの間,StoreMIを起動ドライブに使うのはお勧めできない。StoreMIは,ボリュームのリストアのみでトラブルに対応できるような,それこそ「ゲームをインストールする先のドライブ」などとして使うほうがいいだろう。
コスト対効果を知ったうえでRyzen Desktop 2000シリーズを活用しよう
Ryzen Desktop 2000シリーズの分析は以上だ。本稿ではPrecision Boost 2およびXFR2がどのように動作するかと,StoreMIという,追加投資を伴う要素を検証してきた。
まずPrecision Boost 2とXFR2に関して言えば,高性能CPUクーラーを使うことで動作クロックは確かに向上するものの,その効果が実際の処理速度に表れるかどうかはやや微妙といったところになる。とくに本稿でテストに用いた,負荷が高く処理時間が長いトランスコードのような処理では高性能CPUクーラーだけで性能差を付けるのは難しい印象がある。
同時に,Ryzen 7 2700Xに標準で付属するWraith PrismクーラーはCPU温度を実測する限りかなり性能がいいことも見て取れる。それをを上回る性能を持つ製品は相応に高額なので,導入は慎重にすべきということになりそうだ。
一方のStoreMIは効果的ではあるものの,むやみに高速かつ小容量のSSDを用いるのは無駄で,むしろ安価なSSDをStoreMIに使ったほうが満足度は高いだろう。また,やや特殊なドライブなので運用には注意が必要で,起動ドライブとして使うのは避けたほうがいいと思われる。
これらの情報が,これから第2世代Ryzenマシンを導入しようと考えている読者の役に立てば幸いだ。
Ryzen 7 2700XをAmazon.co.jpで購入する(Amazonアソシエイト)
Ryzen 5 2600XをAmazon.co.jpで購入する(Amazonアソシエイト)
Ryzen Desktop 2000シリーズをパソコンショップ アークで購入する
ゲーム性能が大幅に向上したRyzen Desktop 2000シリーズは,内部で何が変わったのか
AMD公式Webサイト
- 関連タイトル:
Ryzen(Zen,Zen+)
- この記事のURL: