(個人的な)新しいベンチマークメソッド
Live With Linux::hardware
- TOP
- Articles
- Live With Linux
- (個人的な)新しいベンチマークメソッド
序
これは、私が各マシンの性能・性質を、「自分のワークフローに沿って」確認するために、新たに導入した手法である。 自分のワークフローにおける処理能力や、体感的な性能を推し量ることを目的としている。
多くのハードウェアはゲームのベンチマークによって計測されているが、私の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の両方で行う。 また、このテストは消費電力テストを兼ねる。
ウェブゲーム性能
参考になるかどうかは微妙だが、ブラウザゲームでの性能の参考程度に利用する。
再試行によって大きく結果が変動することがあり、このテストはやめるかもしれない。
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 |