●PCMark / CineBench

○Core-X(Cascade Lake-X)と第3世代Ryzen TPの決着をつける

「【暫定レビュー】」と銘打った評価記事をリリースしてから1カ月以上経過してしまったが、完成版をお届けしたいと思う。ちなみに前回の最後で「『可能なら』Core-Xの下位モデルも追加したいと考えている。乞うご期待。」と書かせていただいたが、残念ながら叶わなかった。というわけで、IntelのCore-Xに関してはCore i9-10980XEのみである。その代わり...にもならないのだが、評価対象としてThreadripper 2990WXも追加させていただいた。



○◆評価機材とテスト環境

基本的には今回のテストは前回の環境にRyzen Threadripper 3960X(Photo01〜04)とRyzen Threadripper 2990WXを追加しただけである。ただ前回は紹介しなかったテストをいくつか追加している。

テスト環境は表1の通りである。OSはまだWindows 10 Version 1903のままとなっている。ちなみに以下のグラフにおける表記は

Ryzen 9 3900X:R9 3900X

Ryzen 9 3950X:R9 3950X

Ryzen Threadripper 2990WX:TR 2990WX

Ryzen Threadripper 3960X:TR 3960X

Ryzen Threadripper 3970X:TR 3970X

Core i9-10980XE:i9-10980XE

とした。解像度の表記やテスト手順などは前回と一緒なので今回は割愛する(今回追加したテストを除く)。

Photo01: OPNというか、製品名が異なっている以外はRyzen Threadripper 3970Xと全く同一。裏面のコンデンサの配置も一緒であった。


Photo02: コア数はそんな訳で24コア。


Photo03: L3が×8ということで、4ダイ構成(1ダイあたりL3が×2)であることが判る。


Photo04: Windowsからは問題なく48Threadが見えている。


○◆PCMark 10 v2.0.2144(グラフ1〜6)

UL Benchmarks

https://benchmarks.ul.com/pcmark10

グラフ1


ではまずPCMark 10から。Ryzen Threadripper 2990WXが入ったおかげで、相対的にCore i9-10980XEがあまり遅くない様に見えるマジックが発生しているが、まぁそれはそれとして。とりあえず以前も書いたが、普通の処理にはRyzen Threadripper 2990WXはまるで向いておらず、実際今回もEssentialsのスコアが5000を切っている(PCMark 10はReference構成のスコアで5000となる様に係数を調整されている)あたり、要するにこのReference構成にも劣る程度の性能しか出ないということになる。これがRyzen Threadripper 3900シリーズでは極めて高い(Ryzen 9 3900シリーズと同等の)性能、というあたりはやはり元々のRyzen Threadripper 2900シリーズの構成に無理があったというべきか。

グラフ2


グラフ3


グラフ4


個々のテスト結果(グラフ2〜6)も前回からあまり評価は変わらない。ほぼすべての項目でRyzen Threadripper 2990WXが一番スコアが低く、一方Ryzen Threadripper 3960XはRyzen Threadripper 3970Xに少し劣るといった程度のスコアにとどまっており、概ね前回と同等という感じだ。

グラフ5


グラフ6


それはいいのだが、たとえばグラフ5のPhoto Editingとかグラフ6のExcelで、Core i9-10980XEのスコアがRyzen Threadripper 2990WXと同等というのは、勿論価格を考えればCore i9-10980XEの方がコストパフォーマンスは良いという議論はあるにしても、ちょっとこうしたテストでCore i9-10980XEの成績が振るわない理由をもう少し検討する必要がありそうだ。

○◆CineBench R20(グラフ7)

Maxon

https://www.maxon.net/

グラフ7


Single CPUはまぁ動作周波数なり、というところ。一方Multi CPUでは、さすがにコアの数が多い分Ryzen Threadripper 2990WXがかなり健闘している。ただ全コアフル稼働だから、動作周波数は最終的に限りなくBase Clockの比になる訳で、Base 3GHzのRyzen Threadripper 2990WXは、Base 3.7GHzのRyzen Threadripper 3970Xに比べると分が悪いのは致し方ないところ。実際Base Clockの比(23%)とスコアの比(25%)が大体同じ程度、というあたりもこれを裏付けていると思う。

それにしても、18コアのCore i9-10980XEが16コアのRyzen 9 3950Xにやや見劣りするのは解せないところではある。

●TMPGEnc / DxO PhotoLab / 3DMark

○◆TMPGEnc Video Mastering Works 7 V7.0.12.14(グラフ8)

ペガシス

http://tmpgenc.pegasys-inc.com/ja/product/tvmw7.html

グラフ8


さて、異様にRyzen Threadripper 2990WXの性能がやけに悪いが、以前テストを行った時の性能と比較すると(厳密に言えばTMPGEncのバージョンが違うが)やっぱり同じ程度だったことを考えると、どうもこういうもののようだ。前回はRyzen 7 2700Xとかとの比較だったからそれでも優位性が保たれたが、今回は競合が悪すぎたということか。一方Ryzen Threadripper 3960Xの性能はまぁ妥当なところだと思う。

○◆DxO PhotoLab 2 V2.3.2.265(グラフ9・10)

DxO Labs

https://www.dxo.com/ja/dxo-photolab/

グラフ9


グラフ10


テスト対象が増えてちょっとグラフがデカくなりすぎたので、α7 IIとE-M5でグラフを分けた。さて、α7 II(グラフ9)の方は先のグラフ8に傾向が近いが、Ryzen Threadripper 2990WXの性能がそこまで悪くないのは、Thread間の同期の頻度が少ないためではないかという気がする。もっとも、絶対性能で言えば16コアのRyzen 9 3950Xに及ばない程度(これはグラフ9も同じ)というあたり、32コアの意味が現在では非常に薄くなってしまっている気もする。Ryzen Threadripper 3960Xについては、構成を考えると妥当な性能だと思う。

○◆3DMark v2.10.6799(グラフ11〜16)

UL Benchmarks

https://benchmarks.ul.com/3dmark

グラフ11


グラフ12


次いで3D系を。まずグラフ11・12がOverallで、ここでもRyzen Threadripper 2990WXのスコアが飛び抜けて悪いが、こちらも描画負荷が上がると性能差がなくなるあたりは判りやすい。一方Ryzen Threadripper 3600Xは概ねRyzen Threadripper 3700Xに同じで、どうかするとやや上回っている事があるのは、Base Clockが3.8GHzとちょっとだけ高い事に起因するのではないかと思う。

グラフ13


グラフ14


グラフ15


グラフ16


Graphics Test Detail(グラフ13・14)でもやはりRyzen Threadripper 2990WXの性能が低い(特に負荷の低いIceStormなどで顕著)というのは、要するに描画コマンドの発行が間に合ってないためと思われる。逆にRyzen Threadripper 3600Xは優秀な成績で、ほぼRyzen Threadripper 3700Xに並んでいる。まぁTimeSpyを除くと原則DirectX 11ベースだから、当然Multi-Thread性能は無関係になるわけで当然ではあるのだが。ただ、ではMulti-Thread性能が効きそうなCPU/Physics Test Detail(グラフ15)は? というと、ここでも芳しくない。当然Combined Testでも、(GPU負荷が重すぎてCPU性能が殆ど関係ないFireStrike Ultraはともかく)やっぱり低めに推移している感じだ。

逆にRyzen Threadripper 3960Xは妥当な結果だとは思うが、Combined TestでSkyDiverはRyzen Threadripper 3960X有利、FireStrikeはRyzen Threadripper 3970Xが有利、という結果もちょっとよくわからない。更に言えば、SkyDiverのみ、妙にCore i9-10980XEが突出しているのもいまいち理解に苦しむところである。

●ゲーム: Borderlands 3 / F1 2019 / Far Cry New Dawn

○◆Borderlands 3(グラフ17〜23)

2K Games

https://borderlands.com/ja-JP/

グラフ17


グラフ18


グラフ19


Borderland 3は平均フレームレート(グラフ17)を見る限り大きな差はみられない。最大(グラフ18)/最小(グラフ19)フレームレートはそれなりにバラけるが、最小フレームレートでちょっとRyzen Threadripper 2990WXが低めという程度である。

グラフ20


グラフ21


グラフ22


グラフ23


実際にフレームレート変動を見てみると、2K(グラフ20)だと前半は意外にもRyzen 9 3900Xが低め、広範はRyzen Threadripper 2990WXが低めと面白い傾向で、これが2.5K(グラフ21)だと差がなくなる。3K(グラフ22)だと前半Core i9-10980XE有利に見えるが、実は性能差はそれほど大きくない。4K(グラフ23)はグラフ21をちょっとだけバラけさせた、という程度。Ryzen Threadripper 2990WXであっても、Borderland 3の利用には支障はないというのは面白い結果である。勿論Ryzen Threadripper 3960Xであっても問題はないが。

○◆F1 2019(グラフ24〜30)

Codemasters

http://www.codemasters.com/game/f1-2019/

グラフ24


グラフ25


グラフ26


グラフ27


グラフ28


グラフ29


グラフ30


逆にきっちりRyzen Threadripper 2990WXが他と分離しているのがこちら。最大フレームレート(グラフ25)のみ、それほど分離している感じにはならないが、平均(グラフ24)・最小(グラフ26)に加え、フレームレート変動(グラフ27〜30)も綺麗に他と分離している。逆に言えば残り5製品の間に大きな違いはない、という言い方も出来る。強いていうのであれば、Ryzen Threadripper 3960Xがあまり振るわないというか、Ryzen 9 3900X並の成績に落ち込んでいるのがちょっと気になるところではある。ただそれも強いて言えば、という程度でしかない。Core i9-10980XEは? というと、2K(グラフ27)ではちょっと高めだが、その後は中団に飲み込まれているという感じだ。

○◆Far Cry New Dawn(グラフ31〜33)

UbiSoft

https://ubisoft.co.jp/fcnd/

グラフ31


グラフ32


グラフ33


Threadripper系列が概して振るわないのがこちら。元々Previewの時にその傾向はあったが、どうもThreadripperのアーキテクチャと相性が宜しくないらしい。平均フレームレート(グラフ31)を見ると、Ryzen Threadripper 3970Xも酷いが、それに輪を掛けて酷いのがRyzen Threadripper 2990WXである。この傾向は最大(グラフ32)・最小(グラフ33)ともに変わらない。

Photo05〜Photo10が、2Kにおけるそれぞれのフレームレート変動のキャプチャであるが、とにかくRyzen Threadripper 2990WXと3970Xは細かなフレームレートの振動が発生しており、これが平均フレームレートを下げている要因の一つとも思える(Ryzen Threadripper 2990WXはそもそも絶対的なフレームレートそのものが低い)。Ryzen Threadripper 3960Xは、3970Xに比べれば多少マシではあるが、それでも細かい振動が発生している事に変わりはない。なぜ、という問いの答えは持ち合わせていない(それこそTerry Makedonにでも解析を依頼したいところだが、GeForce RTX 2080 Superを使っているとそれも難しい)が、Ryzen Threadripper 2990WXから3960X/3970Xになってチップ間接続の方法が完全に変わったにも関わらず、こうした問題が出るアプリケーションは存在する事は留意しておく必要がある。

Photo05: Ryzen 9 3900X


Photo06: Ryzen 9 3950X


Photo07: Ryzen Threadripper 2990WX


Photo08: Ryzen Threadripper 3960X


Photo09: Ryzen Threadripper 3970X


Photo10: Core i9-10980XE


●ゲーム: FF XV / For Honor / Metro Exodus

○◆FINAL FANTASY XV WINDOWS EDITION ベンチマーク Version 1.2(グラフ34)

SQUARE ENIX

http://benchmark.finalfantasyxv.com/jp/

グラフ34


PreviewでもCore i9-10980XEが他を圧倒している結果ではあったが、今回はそれを再確認した形になる。加えて言えば、Ryzen Threadripper 2990WXは10000そこそこで頭打ちになるあたりは、こうしたコンシューマ向けアプリケーションとの相性がとことん悪いということになる。まぁこれはDynamic Localモードの適用とか、Ryzen MasterでGame Modeに設定してしまうなどの回避策はあるが、本末転倒な気はしなくもない。逆に言えば、この2製品以外に関して言えばほぼ同じというか、目立ったスコアの差はみられない事も確認できた形だ。

○◆For Honor(グラフ35〜37)

UbiSoft

https://forhonor.ubisoft.com/

グラフ35


グラフ36


グラフ37


他に比べると差が目立たないのがこちら。Ryzen Threadripper 2990WXでさえ、2Kで平均フレームレート(グラフ35)若干(5fps程度)下がる程度で、それも170fps前後における5fpsだから、実際問題としては殆ど差が無いとして良いと思う。同様に最小フレームレート(グラフ37)もやや低いが、こちらも5〜6fpsのオーダーで、少なくともプレイに支障がでるようなものでもない。概ね同等、として良いかと思う。

○◆Metro Exodus(グラフ38〜44)

4A Games

https://www.metrothegame.com/

グラフ38


グラフ39


グラフ40


最初、平均/最大/最小(グラフ38〜40)を作成した時に、てっきりRyzen Threadripper 2990WXだけ測定をミスした(VsyncをOnにした)かと思った。実際このグラフを見ると、そんな感じにすら見える。その他のCPUは、最大フレームレート(グラフ39)こそ多少バラつくものの、あまり大きな差がないからだ。ただMetro Exodusでのベンチマークはこちらにもある様に、パラメータファイルを利用しての自動ベンチマークであり、そして同一のパラメータファイルを使いまわしているので、基本設定をミスするのは難しい。

グラフ41


グラフ42


グラフ43


グラフ44


であるが、フレームレート変動(グラフ41〜44)を見て安心したというか、設定に誤りがあった訳ではなく、殆どの時間で60fps未満の性能しか出せない、という事が再確認できた。F1 2019やFar Cry New Dawnもそうだが、やはりRyzen Threadripper 2990WXの構成は根本的にゲームには向かない、ということだろう(まぁ判っていた話ではあるが)。

●ゲーム: Middle-earth / Tomb Raider / The Division 2

○◆Middle-earth:Shadow of War(グラフ45〜47)

Warner Bros

https://warnerbros.co.jp/game/shadowofwar/

グラフ45


グラフ46


グラフ47


相対的に言えば相変わらずRyzen Threadripper 2990WXが低い性能ではあるのだが、その差は他のゲームに比べるとずっと少ない。実際平均フレームレート(グラフ45)を見ると、2.5K以上はどれも大差ないという感じになっている。最大フレームレート(グラフ46)は、どれも200fps以上の結果になっており、現実問題としてここでの差は意味がない。最小フレームレート(グラフ47)は暴れすぎで参考にならないという、これまでと同じ結果である。

○◆Shadow of the Tomb Raider(グラフ48〜54)

SQUARE ENIX

https://tombraider.square-enix-games.com/en-us

グラフ48


グラフ49


グラフ50


グラフ51


グラフ52


グラフ53


グラフ54


まず平均/最大/最小フレームレート(グラフ48〜50)を見ると、またしてもRyzen Threadripper 2990WXのスコアだけが突出して低い事が判る。逆に言えば、それ以外の製品に関してはほぼ同等であって、2Kでこそ多少バラつきはあるものの、その先は概ね収束しているとして良い。では、実際のフレームレート変動は? ということでまず2K(グラフ51)を見ると、Ryzen Threadripper 2990WXに関してはかなりひどい結果になっている。もっともここまで激しくフレームレートが変動するのは2Kのみで、2.5K〜4Kでは時折ピークはあるものの、変動幅はずっと小さくなっているし、変動の頻度も減っている。要するに、GPUをフルに使う(=PCI Express経由でのアクセスが多くなる)と、何かしらボトルネックが露呈しやすいのかもしれない。

○◆Tom Clancy's The Division 2(グラフ55〜61)

Ubisoft

https://www.ubisoft.co.jp/division2/

グラフ55


グラフ56


グラフ57


グラフ58


グラフ59


グラフ60


グラフ61


平均(グラフ55)/最大(グラフ56)フレームレートは意外なほどに差が無いというか、2Kを除くとほぼ同等といったあたりに落ち着いている。最小フレームレート(グラフ57)は流石にRyzen Threadripper 2990WXが妙に低めになっているが、その他はほぼ同等といったところ。フレームレート変動を見ると、2K(グラフ58)のみちょっとRyzen Threadripper 2990WXの変動が多く、なるほど最低フレームレートが低い訳だというのが納得できるが、2.5K(グラフ59)〜4K(グラフ61)では全く差が見られない。むしろ4Kに関して言えば、Ryzen 9 3900Xとか3950Xの方が最低フレームレートが下回る、という話になっている。もっともフレームレートの絶対値で言えば、2.5KまではPlayableながら、3K(グラフ60)だとどのCPUでもちょっと厳しい感じになっており、描画品質を下げるが、GPUを更に上のグレードにするなどの工夫が必要だろう。

●IntelBurnTest / Intel MKL / MATLAB

○◆IntelBurnTest V2.54 & Intel MKL Benchmarks Suite 2019.6.004(グラフ62・63)

AgentGOD

http://www.xgamingstudio.com

Intel

https://software.intel.com/en-us/articles/intel-mkl-benchmarks-suite

さて、ここからのテストは今回追加した、ワークステーション向けのベンチマークである。こちらでは想定メモリを64GBとしているので、Ryzen 9 3900X/3950Xのスコアは無しである。

まずは算術演算性能ということでLINPACKを行おうと思ったのだが、Intel MKL(Math Kernel Library)はAMDのCPU上では動作しない。そこでちょっと悩んだのだが、今回はIntelBurnTestを利用した。

ちなみに上に示したLinkはReadmeに記載されているものだが、既にこのサイトそのものが存在しない。ただ多数のダウンロードサイトに収録されているので、"IntelBurnTest 2.54"を検索すれば入手可能である(筆者はTechPowerUpから入手した)。

IntelBurnTestのオリジナルはIntel MKL(Math Kernel Library)で提供されるLINPACKを利用しているが、なにしろバージョンが古い(ReadMeによれば2012年にリリースされている)から、最新の拡張命令はサポートされていない。実際Compatibilityを見ると、一番新しいコアでもCore i7-3610QM(IvyBridge)であり、しかももっと古いPhenom IIだのPentium IIIだのまで記載されているあたり、恐らくはSSEまでしか拡張命令をサポートしていないと思われる(というよりも、そういう古いLINPACKをベースに構築したと思われる)。

さて使い方であるが、割と単純である。立ち上げるとこんな画面(Photo11)になる。設定箇所は"Times to run"(繰り返し回数)と"Stress Level"(利用メモリ量)の2つしかない。Stress LevelはPhoto12に示すように4段階+Customがある。

Photo11: "Output results to results.log"にチェックを入れてファイル出力してもいいのだが、結果はまとめてCopy&Pasteできるので、筆者は使わなった。


Photo12: Customを選ぶと、横の入力欄で具体的なメモリ利用量を指定できる。


ここで

Standard :1GB

High :2GB

Very High:4GB

Maximum :利用可能な全メモリ

となっている。LINPACKの場合、利用可能メモリ量が多ければ多いほど性能が上がりやすい(勿論上限はある)。

グラフ62


ということでグラフ62がその結果である。ピーク性能はMaximumの場合がほぼ近いと思うが、

Threadripper 2990WX > Core i9-10980XE > Threadripper 3960X > Threadripper 3970X

という構図は明白である。Core i9-10980XEも、AVX512をフルに使わないと、あまりピーク性能は高くないというあたりか。

グラフ63


ではAVX512をフルに使うとどうか? ということで、こちらはCore i9-10980XE単独の結果であるがIntel MKL Benchmarkを実施した結果がグラフ63である。ピークだと1168.73GFlopsとなっており、ほぼ5倍ほどの性能アップが可能になっている。では同じ様にRyzenもきちんと動かせばグラフ62の5倍の性能が出るか? といえばまず無理で、そもそもAVX512を実装していないから、ここまでの性能向上は見込めないだろう。あくまでもグラフ62は、SSEを利用した場合の性能比較、と考えてほしい。

○◆MATLAB R2019b(グラフ64・65)

MathWorks

https://jp.mathworks.com/

お次はMathWorksのMATLABを利用したベンチマークである。MATLAB自体は別にベンチマーク機能は無いというか、単なる数値解析ソフトウェアであるが、これを利用したベンチマーク用のワークロードファイルがあり、今回はこれを利用した。

さてMATLAB自体は有償であるが、30日間利用可能な無料評価版(機能は有料版と同じ)が提供されており、これを入手して実行している。問題のワークロードファイルであるが、これはCore i9-10980XEの評価用にIntelから提供されたものである。中身は

Sparse:Solving a symmetric sparse linear system(疎行列の演算)

FFT:Fast Fourier Transform of a vector(FFT)

LU:LU Matrix Factorization(LU分解)

Cholesky:Cholesky factorization(コレスキー分解)

QR:QR Factorization(QR分解)

Inverse:Matrix inverse(逆行列)

Matrix Multiplication:Matrix Multiplication(行列乗算)

SVD:Singular Value Decomposition(特異値分解)

Pseudo Inverse:Moore-Penrose pseudoinverse(ムーア-ペンローズの擬似逆行列)

という9種類の科学技術計算を、行列のサイズを2500/5000/7500/10000の4つでそれぞれ実行し、その際の所要時間を測定して示してくれるというものである。

Intel製、ということでIntelに有利なコードが入っていたりするのではないか? という疑念は当然あると思うが、ワークロードファイルを見てみると、実際にはこの9種類の演算はMatlabの内部関数を呼んで処理しているだけで、特にIntelに有利とかそういう種類のものでは無いと判断したため、今回評価に利用してみた。ちなみに結果はcsvファイルの形で出力される。

グラフ64


前置きが長くなったが、グラフ64が素の結果である。テストによって所要時間の桁が大分違うのでちょっと判りにくいかもしれないが、このグラフのみ「短いほど高速」となる。全般的にRyzen Threadripper 2990WXの所要時間が長めなのが判るかと思うが、今一つ性能差は判りにくい。

グラフ65


そこで、一番遅いRyzen Threadripper 2990WXの所要時間を基準に相対性能を示したのがグラフ65である。御覧の通り、Core i9-10980XEが非常に高い性能を示している。ただ、一部のMATLAB内部関数がAVX512をサポートしているとはいえ、ここまで性能差が出るか? という疑問は当然ある。

実はMATLABは内部的にIntel MKLを利用しており、なのでRyzen ThreadripperではMKLの恩恵に預かれない、という事情がある。AVX512を有効に利用するためにMKLを利用するのはある意味当然だが、これが逆にAMDに不利に働いているという訳だ。実は機材を返却したあとでこのあたりに気が付いたのだが、同様の状況にExtremeTechもぶつかっており、しかも彼らは解決策を見出した。結果から言えばMATLABを実行する前に環境変数で

MKL_DEBUG_CPU_TYPE=5

を追加しておくと、Threadripperでの性能が大幅に上がる(ExtremeTechでのテストでは、32〜37%の性能改善が図られたそうだ)。ExtremeTechでの結果はこちらになるが、モノによって効果はまちまち(Sparseは3倍以上高速化されるが、FFTは変わらない、など)であるが、結果から言えばもう少しThreadripperは互角に勝負できそうな雰囲気である(まぁこのあたりの事情を理解しているからIntelはMATLABをテスト項目に追加したのかもしれない)。

●SPECviewperf / SPECworkstation / RMMT

○◆SPECviewperf 13(グラフ66・67)

SPEC

https://www.spec.org/benchmarks.html

次はSPECviewperf(Photo13)である。以前はしばしばSPECviewperfを利用したベンチを取っていたが、ここしばらくはご無沙汰していた。というのは、SPECviewperfはGPUのベンチマークであり、CPU性能はあまり影響しないからだ。またSPECviewperfの対象となるGPUはコンシューマ向けのものではなく、OpenGLのフルアクセラレーションがサポートされる製品であり、具体的に言えばNVIDIAならQuadro、AMDならRadeon Proがこれに相当する。コンシューマ向けの場合、ハードウェア的にはQuadroやRadeon Proと同じながら、ドライバのOpenGLサポートが最小限に留まっており、殆ど性能差が出ない事が普通である。それもあってSPECviewperfのテストは省いていたのだが、ここまで判っていて今回追加したのは、AMDがこんなスライド(Photo14)を提示したからで、一応確認しておくことにした。

Photo13: 以前はこんな画面は無く、ショートカットをクリックするとコンソールから起動されるだけだった。


Photo14: 比較の基準がCore i9-9920Xというあたりが色々微妙ではある。


さて、SPECviewperfの素の結果がグラフ66である。横軸がComposites Scoreという表現なのは、それぞれ複数のテストを行い、この際のフレームレートに重み付けをしてスコアを算出しているためだ。例えば3dsmax-06なら

3dsmax_Arch_Shaded

3dsmax_Arch_Graphite

3dsmax_Space_Wireframe

3dsmax_Space_Clay

3dsmax_Underwater_Wireframe

3dsmax_Underwater_Shaded

3dsmax_HugeFish_Wireframe

3dsmax_HugeFish_Shaded

3dsmax_Office_Realistic

3dsmax_Office_Shaded

3dsmax_Office_RealisticMats

という11種類のテストを行い、それぞれ個別にフレームレートを算出。最後にComposite Scoreを算出するという仕組みになっている。ただ、このままだと比較が難しいので、MATLAB同様にRyzen Threadripper 2990WXの成績を基準にした相対性能を示したのがグラフ67である。

グラフ66


グラフ67


Photo13では当然実機が無いためにCore i9-10980XEが含まれていないが、実際に試してみるとRyzen Threadripper 3960X/3970XよりもわずかながらCore i9-10980XEの方が高速、という結果になった。別にAMDがPhoto13で嘘をついているという話ではなく、実際にRyzen Threadripper 3960X/3970XはCore i9-9980XEよりは高速に動作するのだろうが、Core i9-10980XEは更に高速だった、という話である。

○◆SPECworkstation 3.0.2(グラフ68〜73)

SPEC

https://www.spec.org/benchmarks.html

こちらは2018年にリリースされた、相対的に新しいベンチマークである。元々SPECでは、(先のMATLABのテストと同じ様に)実際のアプリケーションの上でベンチマークスクリプトを動かすという形で3ds MaxやCreo、Maya、Solidworks、Siemens NXといったベンチマークを用意していたが、より広範なベンチマークが求められるようになり、またユーザーがアプリケーションを用意する形だとバージョンミスマッチがしばしば発生、ベンチマークがうまく動かないといった問題も出ていた。こうした問題に対応して、SPECwpc 2.0というワークステーション向けのアプリケーションベンチマークが2015年に提供開始された。これをバージョンアップしたのがSPECworkstation 3で2018年から提供開始されている。

さてそのSPECworkstation 3であるが、起動するとこんな画面が出てくる(Photo15)。まず大別して業界(というか、用途)別に7つの分類があり、これに該当するCPU/GPU/Storageのワークロードが設定できる形だ。ただ今回はCPU性能のみを比較するために、GPU/StorageのWorkloadは実施していない(Photo16)。この状態だと、OfficialのScoreは出ない(例えばMedia and Entertaimentのスコアは0になる)が、個々のCPU Scoreはちゃんと算出される(Photo17)ので、この結果をまとめている。

Photo15: 本来は解像度を2Kにする必要がある(現在は4Kで表示倍率を200%にしている)。ただOfficial Runではないのでこのままとした。


Photo16: GPU/Storageのチェックボックスは個々に外す必要がある。これを一括で外すオプションがあると便利なのだが。


Photo17: テストグループによってテストの数は異なっている。ちなみに結果は自動的にファイルに保存もされる。


グラフ68


ということで、まずグラフ68が7種類のベンチマークの総合成績となる。こちらでは俄然、Ryzen Threadripperが元気である。殆ど差が無いのはGPU Computeであるが、これはLux Renderというレンダリングソフトを「GPUで」処理する際の速度であって、なので本来CPU性能はあまり関係ない(というか、CPU性能がGPU処理をする際の性能に影響するかどうかを確認している)テストである。逆にそれ以外(LuxRenderはMedia and Entertainmentにも含まれるが、こちらではCPUでのレンダリング性能を測定している)は全てCPU処理の性能を示している。このテストではRyzen Threadripper 2990WXがCore i9-10980XEと拮抗(テストによって多少差異はあり)する感じで、Ryzen Threadripper 3960X/3970Xは完全に突き放している格好だ。

グラフ69


もう少し細かく見てみよう。まずMedia and Entertainment(グラフ69)はBlender、handbrake、LuxRenderの3つのアプリケーション(テストそのものは全部で8種類)から構成されるが、LuxRenderのスコアでRyzen Threadripper 2990WXとCore i9-10980XEが同じ、というのは32coreに28coreで拮抗するという話で、Core i9-10980XEの効率の良さを示していると言えるが、同じ32coreのRyzen Threadripper 3970Xは50%以上高速だし、24coreのRyzen Threadripper 3960Xにも及ばないあたりは、第3世代Threadripperの効率が更に改善されている事を示していると思う。ほかの結果も概ね同じ傾向だ。

グラフ70


Product Development(グラフ70)はCalculiX、WPCcfd、rodiniaCFDという有限要素解析や流体解析ツール(テストそのものも3種類)の結果だが、rodiniaCFDのみちょっと面白い(Ryzen Threadripper 3970Xのみ突出し、他は大差ない)スコアになっている。ただ32coreのRyzen Threadripper 2990WXもそれなりに良いスコア、ということはThreadの数が性能を決めるのかもしれない。

グラフ71


Life Sciences(グラフ71)は、lammps、namd、rodiniaLifeSciの3種類のアプリケーション(テストそのものは12種類)から構成される。こちらはRyzen Threadripper 2990WXですらCore i9-10980XEをしのいでおり、Ryzen Threadripper 3960X/3970Xはこれを更に上回るという好成績である。

グラフ72


Financial ServiceについてはFSIという1つのアプリケーションの結果そのまま(テストそのものは3種類)なので割愛して、Enercy(グラフ72)はConvolution、FFTW、Kirchhoff、poisson、srmpの5種類(テストは合計7つ)から構成される。妙にsrmpのスコアだけ全てが落ち込んでいるのは、リファレンス(12.82sec)に対して実際の処理時間が43sec〜148secと数倍掛かっているためだ。srmpは内部でSPECviewperfを呼んでおり、これがOpenGL古アクセラレーションを前提としているため、OpenGLのサポートが最小限なGeForce RTX 2080 Superでは処理時間が異様に増えているのが原因とみられる。ただこれを除くと概ねどのアプリケーションでも傾向は同様で、やはりThreadripper系が圧倒的に有利である。

グラフ73


上にも書いたがGPU ComputeはLuxRenderだけなのでグラフは割愛させていただき、最後はGeneral Operations(グラフ73)であるが、こちらは7zip/octave/python36の3つ(テストは全部で7種類)である。ここでようやくCore i9-10980XEも多少拮抗したスコアを示している。とはいえ、トータルで見るとまだ追いついたというのは無理があり、octaveが拮抗しているにすぎない。

全体を通じてみると、MALTABの結果の逆パターンかな? という感じである。きちんと最適化されたアプリケーションを使うとCore i9-10980XEは猛烈な性能を出せるが、最適化がそこそこ、あるいはIntel向けの最適化を施していないアプリケーションではThreadripperがかなり良い成績を出しているという構図だ。

○◆RMMT 1.1(グラフ74〜75)

Rightmark.org

http://cpu.rightmark.org/products/rmma.shtml

グラフ74


性能ベンチマークの最後はこちらで。Read(グラフ74)は、Ryzen 9とRyzen Threadripper、Core i9-10980XEの3つに分かれた感じだ。ただRyzen Threadripper 2990WXのみはRyzen 9にやや及ばないという感じで、この傾向は以前のものと同じであり、あまり驚くには値しない。

グラフ75


Write(グラフ75)も同様であるが、意外にもCore i9-10980XEとRyzen Threadripper 3960Xがほぼ同じ成績になっているのはちょっと面白い。実のところは動作周波数が全てを決めているという話なのかもしれない。

●消費電力 / 考察

○◆消費電力(グラフ76〜83)

グラフ76


グラフ77


グラフ78


グラフ79


グラフ80


グラフ81


最後に消費電力である。今回はアプリケーションベンチとして、IntelBurnTestのものも追加してみた。まずグラフ76がSandra 20/20のArithmetic Benchmark、グラフ77がCineBench R20のMP、グラフ78がTMPGEnc Mastering Worksで4streamエンコードの最初の150秒間、グラフ79が3DMark Firestrike Demo、グラフ80がFarCry New Downの2K、そしてIntelBurnTestのStandard(1GB)を1回だけ行った結果がグラフ81である(これのみ、Ryzen 9は測定していない)。

グラフ82


グラフ83


ここから消費電力の平均値を取ったのがグラフ82、待機時との差を算出したのがグラフ83となる。

こうしてみると、消費電力の絶対値そのもので言えばやはり圧倒的にThreadripperが大きく、Core i9-10980XEは多いもの(例えばCineBench)もあれば少ないもの(例えばTMPGEnc)もあるという、ちょっと不思議な構図である。

グラフ84


ただ、例えばDhrystone/Whetstoneの性能/消費電力比を求めるとグラフ84の様になる。12nmのRyzen Threadripper 2990WXがDhrystoneでは一番効率が悪いが、WhetstoneではCore i9-10980XEが更に下回る、というのはAVX512をフルに使っていないから(AVX2どまり)という話はあるにしても、やはりCore i9-10980XEの動作周波数が高めに設定されており、性能効率という観点ではややバランスが悪くなっているからだろう。

あるいはTMPGEnc Mastering Works 7の消費電力とエンコード性能から効率を算出すると表2の様になる。ここでは1fpsの処理に要する電力なので、数字が少ないほど良い。一番いいのがRyzen 9 3950X、次いでRyzen Threadripper 3970X、その次がCore i9-10980XEである。勿論猛烈に効率の悪いRyzen Threadripper 2990WXに比べればどれもずっとマシ、という見方もあるのだが。

これはCineBenchも同じである。グラフ77で判る様に、製品毎に処理時間が大幅に違うから、単純に平均消費電力差を比較してもあまり意味が無い。そこで平均消費電力差と消費時間、その積である電力量をまとめたのが表3になる。これが小さいほど、効率よく1枚のレンダリングが可能になるという訳だが、最も効率が良いのがRyzen 9 3950X、次いでRyzen Threadripper 3970Xが続き、Ryzen Threadripper 3960X、Ryzen 9 3900X、Ryzen Threadripper 2990WXと来て、一番消費電力が多いのがCore i9-10980Xとなる。

処理時間がテストによって大きく違うのはグラフ81のIntelBurnTestも同じである。そこで演算性能と実効消費電力差、所要時間から電力量とその効率(1GGLOPSあたりの電力量)をまとめたのが表4である。Ryzen Threadripper 3970Xは48W・秒/GFLOPSと一番効率が良く、Core i9-10980XEと比べても4割ほど高効率である。一番効率が悪いのはRyzen Threadripper 2990WXで、Ryzen Threadripper 3970X比で3.5倍も効率が低い。逆にゲーム系(FireStrike Demo、Far Cry New Dawn)ではCore i9-10980XEが相対的に効率が良い(というか、省電力)であるが、こちらはRyzen 9と比べると性能の消費電力の両面で概ね同程度であり、決定的なアドバンテージとはならない感じだ。

○◆考察

冒頭にも書いたが、Core-Xの下位モデルも出来れば試してみたかったところだがちょっと叶わなかった。価格性能比で考えると、Core i9-10980Xはやや割高であり、もう少し下のCore i9-10940Xあたりが国内だとぎりぎり10万を切るかかくで販売されており、このあたりが現実的な線かな、とは思っていたのだが。

それはともかくとして相ざらえさせて頂いた結果で言えば、

ビジネスでRyzen Threadripper 2990WXを利用しているユーザーは、環境的に許されるなら速やかにRyzen Threadripper 3970X/3990Xにアップグレードすべきである。コストパフォーマンス(単に初期コストのみならず、運用コストも含めての話)が格段に良くなっており、利用頻度にもよるが元を取るのにそう時間は掛からないだろう。それほどのインパクトがある。

ワークステーション向けのUsageで言えば、確かにCore i9-10980XEも健闘はしているが、Ryzen Threadripper 3960X/3970Xに競合するのはかなり厳しい。

ゲーミング向けで言えば、Ryzen Threadripper 3960X/3970Xは殆どの場合に「普通に使える」。ただ性能面でのアドバンテージは(エンコードとかレンダリングを除くと)ほぼ無い状況で、Ryzen 9 3900X/3950Xで十分である。

というあたりであろうか。この後、Deep Dive内部解析(Cascade LakeのRMMAでの解析、それとCascade Lake/ThreadripperのcIoDのLatency周りの解析が主体となる)をお届けする予定だが、こちらは余禄というかおまけであって、製品としての評価は今回でほぼ固まったと思う。

2020年もIntelは色々大変そうだ。というのは、Ryzen Threadripper 3990Xが2月発売となり、しかも$3990という爆裂価格での提供だからで、Intelは短期的にこれに対抗できる弾を持ち合わせていない。次のCore-XがCooper LakeになるのかIce Lake-SPになるのか現時点では不明だが、とりあえずコア数で競合するためにはCooper Lakeでは厳しいところ。その意味ではIce Lake-SPの公算がちょっとだけ高まった感じではあるが、IPCこそ改善されているものの動作周波数が上がりにくそうなIce Lake-SPでどこまで対抗できるか、ちょっと心配である。

コンシューマ向けも、Comet Lakeで現在のRyzen 9 3900Xとか3950Xに対抗するのは厳しい様に思える。現実問題としては、Ryzen 7 3800Xあたりに対抗、というシナリオを取ってくるかもしれない。それもそれでまた悲しい話ではあるのだが。