Chienomi

(個人的な)新しいベンチマークメソッド

Live With Linux::hardware

これは、私が各マシンの性能・性質を、「自分のワークフローに沿って」確認するために、新たに導入した手法である。 自分のワークフローにおける処理能力や、体感的な性能を推し量ることを目的としている。

多くのハードウェアはゲームのベンチマークによって計測されているが、私のPCはゲーム機ではないし、そのようなベンチマークは機能しない。 私のワークフローにおいてハードウェアを推し量る材料になっていないのだ。

Phoronixのベンチマークはかなり参考になるが、テストされているハードウェアが少ない。 また自分が知りたいシチュエーションと全く重なっているわけでもない。

こうしたことから、「自分が知りたいことは自分で測る」必要がある。 それを実際にやってみたのがこちらだ。

ストレージテストは、必要なときには既に実施して公開しており、ストレージ単体でのテストをシステムテストで必要とすることがないため実施しない。

この記事は、新しいハードウェアのテストがされると追記されていく。

また、前提としてカーネルのバージョンやソフトウェアのバージョンが上がることで、結果が大きく異なってくる場合がある。 特に、ウェブブラウザによるベンチマークは大きな差を生じる場合がある。 そのため、これらの相対的な値はあくまで参考程度にすること。 特に新しいハードウェアのテストはそれまでのハードウェアよりも後の時期に行われているため、ハードウェアだけでなくソフトウェアによってさらなる差が開く場合がある。

ベンチマークメソッド

前提

マシンは1つのFHDディスプレイのみを有効にし、余計なデバイスやプロセスを起動しない。 UIスケーリング、およびフォントスケーリングは無効にする(フォントスケーリングがDPIによって決定される場合は、96dpiにする)。 Qtデスクトップ、特にPlasmaの場合はディスプレイDPIによって自動的に決定されたりするため、注意が必要。

CPUガバナーは指定がない限り、performanceを使用する。

ラップトップは、十分なバッテリーがある状態で、放電状態で行う。

私は本テストはLinux上で行っているが、Windowsで同様のテストをすることも可能。 ディスプレイ解像度の違いが埋められないが、Macでも可能で、Apple製プロセッサの計測を誰かがやってくれると人々は喜ぶかもしれない。

ゲーム性能

Unigine Heavenで、Extremeプリセットにて計測する。

Unigine HeavenはA10機やZ400など、当時から決してゲーム向きではないPCでゲームするために指標として使っていたもので、主にそれらとの比較のために用いている。 この目的では、Ryzen7 3700X/Radeon RX5700XT機で決着がついていると言え、このベンチマークはゲーム向きでないPC(例えば一般的なラップトップ)や古いゲーミングPCのために実施するものである。

現代で通用するゲーミングPCについては、Unigine Superpositionを用いて計測する。 プリセットは1080p Extremeと4k Optimizedの2種類で計測。

Unigine Superpositionは「save」してもどうすることもできないことで注意。Screenshotにしよう。

よくあるゲームベンチマークである。 もっと良い方法はあるだろうけど、参考程度にはなる。

ウェブ性能

Antutu HTML5 Benchmarkを使用する。

ウェブブラウザのパフォーマンス計測と、電力パフォーマンス計測に適する。 非常に多くの場合、体感的パフォーマンスに近い結果が出る。

このベンチマークは、ブラウザバージョンによって大幅に結果が変わることがある。 例えば、5950XではVivladi 6.1→6.2で、78000→98000に引き上げられた。

本テストはビデオカードの影響が見られなかったため、ビデオカードの項目は省略する。

このテストはPerformanceとPowersaveの両方で行う。 また、このテストは消費電力テストを兼ねる。

ウェブゲーム性能

WirpleのHTML5 3Dベンチマークを使う。

参考になるかどうかは微妙だが、ブラウザゲームでの性能の参考程度に利用する。

再試行によって大きく結果が変動することがあり、このテストはやめるかもしれない。

ffmpeg VP9テスト

サンプルソースファイルをエンコードする。 可能な限り、ファイルはtmpfsに置いて行う。

以下のコマンドを実行。

ffmpeg -y -ss 12 -i benchmark-ballisticNG-video.mp4 -c:v libvpx-vp9 -crf 38 -c:a libopus -b:a 128k -f webm /dev/null

エンコードでFPS値が安定するところまで進め、さらに同様のプロセスを増やしていく。

この合計FPSを算出する。プロセス数は、この合計FPSが最も高くなったものを採用する。

私のワークフローの中で、もっともCPU性能が要求されるシチュエーションのものである。

スクリーンキャストテスト (廃止)

X11grabを用いたスクリーンキャストのテストを実施していたのだが、些細な要素にかなり大きく左右され、本当に知りたい値(実際にアプリを動かしている状態での録画)が、ベンチマークとして固定できる適切な指標にならなかったため、廃止した。

xz並列圧縮テスト

ffmpegと同じサンプルソースファイルに対して以下のように実行する。 可能な限り、ファイルはtmpfsに置いて行う。

time xz -e -T0 -c benchmark-ballisticNG-video.mp4 > /dev/null

必要に応じて-Mオプションも付与すること。

timeの結果の実時間を記録する。

最もシンプルに並列処理性能を計測できる。

消費電力計測

アイドル時と、Antutu webのベンチマーク時の値を、(電気的な)ワットメーターを用いて計測する。 アイドル時は安定するのであれば安定値、しないのであれば範囲値を、ベンチマーク中はスパイクを除く最大値を記載する。

ラップトップについては、powertopを用いる。 また、ラップトップのディスプレイ輝度は、「部屋を全灯にして、暗い状態から無理なく見えるところまで上げていったところ」とする。1

Antutuベンチマークの値を計測するのは、X(Twitter)やMisskeyなど、開いているだけでもCPUを食い尽くすような重いページを開きっぱなしにしていることによる影響を確認するためのものである。 Pleroma/AkkomaやMastodonなどを含めて、SNSのWebUIはCPU利用率が高く、みるみるバッテリーが減っていく傾向がある。

この計測はあくまでアイドルで放置しているとき、あるいはSNSを開いた状態で作業しているときの消費電力を推測しようというもので、最大消費電力を計測しようというものではない。

既存マシンの結果

Unigine Heaven

CPU Video Score FPS MinFPS MaxFPS
Ryzen9 5950X Radeon RX7900XTX 8719 346.1 108.5 666.0
Ryzen5 5600X Radeon RX5700XT 3509 139.3 16.2 275.5
Ryzen7 3700X Radeon RX5700XT 3332 132.3 17.2 279.1
Xeon Silver 4114 (2x) Radeon RX580 OC 1586 63.0 8.9 141.6
Xeon Silver 4114 (2x) Quadro P400 294 11.7 4.9 25.5
Xeon W3565 GeForce GTX750Ti 585 23.2 6.7 48.3
A10 7870k - 157 5.2 3.8 12.9
Model CPU Score FPS MinFPS MaxFPS
dynabook RZ Core i7-1360P 616 24.5 13.7 55.4
IdeaPad Slim 360 (17) Ryzen7 5700U 419 16.6 10.8 35.5
ThinkPad X1 Carbon Gen8 Core i7-10610U 142 5.6 3.6 11.9
ThinkPad X1 Carbon Gen5 Core i5-7200U 149 5.9 3.6 12.3

Unigine Superposition

1080p Extreme

CPU Video Score FPS MinFPS MaxFPS MinTemp MaxTemp
Ryzen9 5950X Radeon RX7900XTX 15847 118.53 89.94 146.99 44.0 72.0
Ryzen5 5600X Radeon RX5700XT 5063 37.88 31.25 44.93 52.0 85.0

4k Optimized

CPU Video Score FPS MinFPS MaxFPS MinTemp MaxTemp
Ryzen9 5950X Radeon RX7900XTX 20173 150.89 120.88 185.24 52.0 72.0
Ryzen5 5600X Radeon RX5700XT 7575 56.66 48.82 67.19 51.0 84.0

Antutu web

Performance governor

CPU Browser Score
Ryzen9 5950X Vivaldi 6.2 98096
Ryzen5 5600X Vivaldi 6.2 86010
Xeon Silver 4114 (2x) Vivaldi 6.2 48965
Xeon W3565 Vivaldi 6.2 47050
A10-7870K Vivaldi 6.2 44603
Model CPU Browser Score
dynabook RZ Core i7-1360P Vivaldi 6.2 97847
IdeaPad Slim 360 (17) Ryzen7 5700U Vivaldi 6.2 61794
ThinkPad X1 Carbon Gen8 Core-i7 10610U Vivaldi 6.2 63167
ThinkPad X1 Carbon Gen5 Core-i5 7200U Vivaldi 6.2 48779

Powersave governor

CPU Browser Score
Ryzen9 5950X Vivaldi 6.2 70388
Ryzen5 5600X Vivaldi 6.2 53402
Xeon Silver 4114 (2x) Vivaldi 6.2 44512
Xeon W3565 Vivaldi 6.2 32048
A10-7870K Vivaldi 6.2 30756
Model CPU Browser Score
dynabook RZ Core i7-1360P Vivaldi 6.2 58637
IdeaPad Slim 360 (17) Ryzen7 5700U Vivaldi 6.2 34085
ThinkPad X1 Carbon Gen8 Core-i7 10610U Vivaldi 6.2 48989
ThinkPad X1 Carbon Gen5 Core-i5 7200U Vivaldi 6.2 46507

Wirple BMark

CPU Video Browser Canvas1 Canvas2 WebGL1 WebGL2 Total
Ryzen9 5950X Radeon RX7900XTX Vivaldi 6.2 1237 4574 1927 1984 9722
Ryzen5 5600X Radeon RX5700XT Vivaldi 6.2 1227 4606 1954 1949 9736
Xeon Silver 4114 (2x) Quadro P400 Vivaldi 6.2 750 2148 789 753 4440
Xeon W3565 GeForce GTX750Ti Vivaldi 6.2 605 539 747 668 2559
A10-7870K - Vivaldi 6.2 444 1206 514 479 2643
Model CPU Browser Canvas1 Canvas2 WebGL1 WebGL2 Total
dynabook RZ Core i7-1360P Vivaldi 6.2 1222 4951 2103 2048 10324
IdeaPad Slim 360 (17) Ryzen7 5700U Vivaldi 6.2 528 1258 628 749 3163
ThinkPad X1 Carbon Gen8 Core i7-10610U Vivaldi 6.2 765 1539 769 618 3691
ThinkPad X1 Carbon Gen5 Core i5-7200U Vivaldi 6.2 20 607 508 397 1532

ffmpeg

CPU Total FPS MaxFPS MinFPS Processes
Ryzen9 5950X 15.0 2.4 1.4 8
Ryzen5 5600X 6.8 1.5 0.8 6
Xeon Silver 4114 (2x) 7.0 0.8 0.4 11
Xeon W3565 1.6 0.2 0.4 6
A10-7870K 1.3 0.1 0.3 62
Model CPU Total FPS MaxFPS MinFPS Processes
dynabook RZ Core i7-1360P 5.1 2.2 2.9 2
IdeaPad Slim 360 (17) Ryzen7 5700U 3.5 0.7 0.8 5
ThinkPad X1 Carbon Gen8 Core i7-10610U 1.9 0.7 1.2 2
ThinkPad X1 Carbon Gen5 Core i7-7200U 1.0 0.4 0.6 2

xz

CPU Time
Ryzen9 5950X 13.607
Ryzen5 5600X 27.566
Xeon Silver 4114 (2x) 17.325
Xeon W3565 48.976
A10-7870K 78.00
Model CPU Time
dynabook RZ Core i7-1360P 23.869
IdeaPad Slim 360 (17) Ryzen7 5700U 31.966
ThinkPad X1 Carbon Gen8 Core i7-10610U 43.375
ThinkPad X1 Carbon Gen5 Core i7-7200U 75.78

消費電力

CPU Video Idle/Save Idle/Pfm Att/Save Att/Pfm
Ryzen5 5950X3 Radeon RX7950XTX 70〜79 69〜74 113 188
Ryzen5 5600X4 Radeon RX5700XT 60 60 93 96
Xeon Silver 4114 (2x)5 Quadro P400 60 58 110 121
Xeon W35656 GeForce GTX750Ti 67 65 102 140
A10-7870K7 - 76 72 104 173
Model CPU Idle/Save Idle/Pfm Att/Save Att/Pfm
dynabook RZ Core i7-1360P 3.20〜3.66 4.11〜4.75 11.75 36.54
IdeaPad Slim 360 (17) Ryzen7 5700U 4.2 4.2 9.55 17.43
ThinkPad X1 Carbon Gen8 Core i7-10610U 5.69 6.24 11.50 19.44
ThinkPad X1 Carbon Gen5 Core i5-7200U 3.12 3.27 13.52 15.30