◆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がほぼ同じ成績になっているのはちょっと面白い。実のところは動作周波数が全てを決めているという話なのかもしれない。