「ベンチマーク」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) ({{Related|ベンチマーク/データストレージデバイス}} を削除(英語版に追従)) |
(→hdparm: 翻訳) |
||
52行目: | 52行目: | ||
=== hdparm === |
=== hdparm === |
||
− | ストレージメディアのベンチマークは [[Hdparm]] で取ることができます ({{pkg|hdparm}}) |
+ | ストレージメディアのベンチマークは [[Hdparm]] で取ることができます ({{pkg|hdparm}}) hdparm に -Tt スイッチをつけると、シーケンシャルリードの時間を計ることができます。この方法はパーティションアライメントに依存しません。 |
− | |||
# hdparm -Tt /dev/sdX |
# hdparm -Tt /dev/sdX |
||
/dev/sdX: |
/dev/sdX: |
||
59行目: | 58行目: | ||
Timing buffered disk reads: x MB in y seconds = z MB/sec |
Timing buffered disk reads: x MB in y seconds = z MB/sec |
||
+ | {{Note|hdparm のマニュアルにあるように、読み取り速度を正確に評価するためには、上記のコマンドを2-3回実行し、結果を手動で平均化する必要があります。}} |
||
− | {{Note|One should run the above command 2-3 times and manually average the results for an accurate evaluation of read speed per the hdparm man page.}} |
||
=== gnome-disks === |
=== gnome-disks === |
2022年1月26日 (水) 23:41時点における版
関連記事
ベンチマークとはパフォーマンスを測定し他のシステムと結果を比較する行為、また手順が統合され広く認められた標準のことです。システムのパフォーマンスを統合的な方法で評価することで以下のような質問に答えることが可能です:
- システムのパフォーマンスが期待通りに出ているか?
- どのドライバーバージョンを使えば最適なパフォーマンスを得られるか?
- ある作業をするのに十分な能力がシステムにあるか?
システムパフォーマンスを調べることができるツールは多数存在します。以下はその利用可能なツールのリストです。
単体のツール
UnixBench
unixbench のパッケージは AUR に存在します: unixbenchAUR。ベンチマークを実行するにはターミナルから ubench を実行します。
参照:
- https://code.google.com/p/byte-unixbench/
- https://code.google.com/p/byte-unixbench/source/browse/trunk/UnixBench/USAGE
interbench
interbench はインタラクティブに Linux のベンチマークを行うためのアプリケーションです。CPU や I/O のスケジューラ、ファイルシステムの変更やオプションなど、Linux カーネル内の設計やシステム設定の変更による効果を測定するために作られています。
interbench は AUR から利用可能です: interbenchAUR。
参照:
ttcp
(n)(nu)ttcp は様々なネットワーク接続における二点間の帯域を計測します。帯域を計測するために両方のノードにプログラムをインストールする必要があります。
ttcp には様々な亜種が存在し AUR から利用できます (下のリンクを参照)。
参照:
iperf
iperf は使いやすい二点間の帯域幅テストツールです。TCP または UDP のどちらかが使えます。出力を整形して表示したり並列テストが可能です。
iperf は公式リポジトリからインストールできます。また、iperf の別バージョンが iperf3 から利用可能です。
time
time コマンドを使うことでコマンドの実行にかかった時間を求めることができます。起動から終了までの時間を表示します。time はほとんどの Linux システムに標準で含まれています。
$ time tar -zxvf archive.tar.gz
hdparm
ストレージメディアのベンチマークは Hdparm で取ることができます (hdparm) hdparm に -Tt スイッチをつけると、シーケンシャルリードの時間を計ることができます。この方法はパーティションアライメントに依存しません。
# hdparm -Tt /dev/sdX /dev/sdX: Timing cached reads: x MB in y seconds = z MB/sec Timing buffered disk reads: x MB in y seconds = z MB/sec
gnome-disks
There is a graphical benchmark called gnome-disks contained in the gnome-disk-utility package that will give min/max/ave reads along with average access time and a nice graphical display. This method is independent of partition alignment!
# gnome-disks
Users will need to navigate through the GUI to the benchmark button ("More actions..." > "Benchmark Volume..."). Example
KDiskMark
kdiskmark is an HDD and SSD benchmark tool with a very friendly graphical user interface. KDiskMark with its presets and powerful GUI calls Flexible I/O Tester and handles the output to provide an easy to view and interpret comprehensive benchmark result.
systemd-analyze
systemd-analyze plot > boot.svg
Will plot a detailed graphic with the boot sequence: kernel time, userspace time, time taken by each service. Example
dd
The dd utility can be used to measure both reads and writes. This method is dependent on partition alignment! In other words, if you failed to properly align your partitions, this fact will be seen here since you are writing and reading to a mounted filesystem.
First, enter a directory on the SSD with at least 1.1 GB of free space (and one that obviously gives your user wrx permissions) and write a test file to measure write speeds and to give the device something to read:
$ dd if=/dev/zero of=/path/to/SSD/tempfile bs=1M count=1024 conv=fdatasync,notrunc status=progress
1024+0 records in 1024+0 records out v bytes (w MB, x MiB) copied, y s, z MB/s
Next, clear the buffer-cache to accurately measure read speeds directly from the device:
# echo 3 > /proc/sys/vm/drop_caches $ dd if=tempfile of=/dev/null bs=1M count=1024 status=progress
1024+0 records in 1024+0 records out v bytes (w MB, x MiB) copied, y s, z MB/s
Now that the last file is in the buffer, repeat the command to see the speed of the buffer-cache:
$ dd if=tempfile of=/dev/null bs=1M count=1024 status=progress
1024+0 records in 1024+0 records out v bytes (w MB, x MiB) copied, y s, z MB/s
Finally, delete the temp file
$ rm tempfile
dcfldd
Dcfldd does not print the average speed in MB/s like good old dd does but with time you can work around that.
Time the run clearing the disk:
# time dcfldd if=/dev/zero of=/dev/sdX bs=4M 18944 blocks (75776Mb) written.dcfldd:: No space left of device real 16m17.033s user 0m0.377s sys 0m51.160s
Calculate MB/s by dividing the output of the dcfldd command by the time in seconds. For this example: 75776Mb / (16.4 min * 60) = 77.0 MB/s.
7z
7z benchmark command can be used to measure the CPU speed in MIPS and also to check RAM for errors. Just install p7zip and run the command below. More detailed information can be found at [1].
$ 7z b
peakperf
peakperf-gitAUR is a microbenchmark that achieves peak performance on x86_64 CPUs. Some issues may reduce the performance provided by your CPU, like CPU cooling. With peakperf you can check if your CPU provides the full power it is capable of doing.
You can calculate the performance (measured in GFLOP/s) you should get using your CPU (see [2]) and compare it with the performance that peakperf gives you. If both values are the same (or very similar), your CPU behaves as it should.
ソフトウェアスイート
Bonnie++
オリジナルの Bonnie を C++ で書きなおしたベンチマークスイートです。ハードドライブとファイルシステムのパフォーマンステストを複数行います。
参照:
IOzone
IOzone は製造供給元のコンピュータープラットフォームのファイルシステムを分析するのに役立ちます。
このプログラムは AUR から利用可能です: iozoneAUR。
参照:
HardInfo
hardInfo はシステムのハードウェア・オペレーティングシステムの情報を収集したり、ベンチマークを実行して、印刷可能な HTML やプレーンテキスト形式のレポートを生成することができます。HardInfo は CPU と FPU のベンチマークを行い、とてもキレイな GTK ベースのインターフェイスを持っています。
Phoronix Test Suite
Phoronix Test Suite は包括的なテスト・ベンチマークのプラットフォームです。拡張性のあるフレームワークを提供することで新しいテストを簡単に追加できるようになっています。クリーンで、再現性があり使いやすいかたちで、質的・量的なベンチマークが効果的に実行できるように設計されているソフトウェアです。
Phoronix Test Suite は2004年から Phoronix.com によって開発されている拡張的なテスト・内部ツールをベースにしており、業界をリードする第一線のコンピューターハードウェア・ソフトウェアメーカーによってサポートを受けています。このソフトウェアはオープンソースであり GNU GPLv3 でライセンスされています。
もともとは Linux のテストを自動化するために開発されましたが、それから Phoronix Test Suite は OpenSolaris, Apple macOS, Microsoft Windows, BSD オペレーティングシステムのサポートも追加されました。Phoronix Test Suite は軽量なプロセッシングコア (pts-core) と XML ベースのプロファイルと関連するリソーススクリプトからなる各ベンチマークによって構成されています。ベンチマークのインストールから、実際のベンチマーク、主要なハードウェア・ソフトウェアのコンポーネントの解析まで、処理はほとんど自動で行われ、繰り返し実行することが可能で、ユーザーが行う必要があるのは実行の確認だけです。
Phoronix Test Suite のインターフェイスは OpenBenchmarking.org を共同のウェブプラットフォームとしており、テストの結果を一箇所に集めることで、テストのプロファイルや結果を共有できるなど、高度な分析機能などが備わっています。Phoromatic は複数のシステムでのテストの実行をリモート管理機能によって管理するエンタープライズのコンポーネントです。
このスイートは公式リポジトリから利用できるパッケージ phoronix-test-suiteAUR によってインストールできます。AUR からは開発中のバージョンが利用できます: phoronix-test-suite-gitAUR。
S
S, an I/O Benchmark Suite, is a small collection of scripts to measure storage I/O performance.
It has been developed by algodev, the team behind the BFQ scheduler.
Download or clone the project, install its dependencies and run it as root (privileges needed to change disk scheduler).
フラッシュメディア
フラッシュメディアの性能特性は iozoneAUR を使うことで量的に測定することができます。読み書き速度の値が一定になることは基本的になく、システムアップデートによる大量のファイルの書き込みや展開など、I/O の負担が重い操作と互いに関係があります。そのような場合に考慮する必要がある基準はランダム書き込み速度です。
以下の例では 4k レコードサイズで 10M のファイルをテストしています:
$ iozone -e -I -a -s 10M -r 4k -i 0 -i 1 -i 2 ... random random kB reclen write rewrite read reread read write 10240 4 661 649 5802 5822 3892 624
Graphics
Basemark GPU
Basemark GPU is an evaluation tool to analyze and measure graphics API (OpenGL 4.5, OpenGL ES 3.1, Vulkan and Microsoft DirectX 12) performance across mobile and desktop platforms. Basemark GPU targets both Desktop and Mobile platforms by providing both High Quality and Medium Quality modes. The High-Quality mode addresses cutting-edge Desktop workloads while the Medium Quality mode addresses equivalent Mobile workloads.
If you are using AMD GPU and have several vulkan implementations installed simultaneously, in the Test page you will see them as separate GPUs in Graphics Device dropdown list.
Basemark GPU is available in basemarkAUR package.
GFXBench
GFXBench is a high-end graphics benchmark that measures mobile and desktop performance with next-gen graphics features across all platforms. As a true cross-API benchmark, GFXBench supports all the industry-standard and vendor-specific APIs including OpenGL, OpenGL ES, Vulkan, Metal, DirectX/Direct3D and DX12.
Vulkan API tests are currently under development and are only available for their corporate partners.
GFXBench is available in gfxbenchAUR package.
glmark2
glmark2 is an OpenGL 2.0 and ES 2.0 benchmark.
glmark2 is available in glmark2AUR package.
glxgears
glxgears は大衆的な OpenGL テストで、シンプルに OpenGL のパフォーマンスを測ってフレームレートを出力します。グラフィックドライバーのダイレクトレンダリング機能のテストとして glxgears は有用ですが、時代遅れのツールなので、GNU/Linux グラフィックの現況や OpenGL 全体の性能を示すものではありません。glxgears がテストするのはゲームなどに使われる OpenGL の機能の中でも一部だけです。glxgears でパフォーマンスの向上が見られたからといってゲームでもそれが必ずしも反映されるとは限りません。詳しくは ここ を見て下さい。
glxgears は mesa-demos や lib32-mesa-demos (Multilib) パッケージでインストールできます。
GpuTest
GpuTest is a cross-platform (Windows, Linux and Max OS X) GPU stress test and OpenGL benchmark. GpuTest comes with several GPU tests including some popular ones from Windows'world (FurMark or TessMark).
GpuTest is available in gputestAUR package.
Unigine Engine
Unigine が開発した現代的な OpenGL ベンチマークです。彼らのグラフィックエンジンをベースにしており、以下のような機能が存在します:
- ピクセルあたりの動的光源処理
- 通常・視差遮蔽マッピング
- 64ビットの HDR レンダリング
- ボリュームフォグ・ライト
- パワフルなパーティクルシステム: 炎・煙・爆発
- 拡張性のあるシェーダセット (GLSL / HLSL)
- ポストプロセス: 被写界深度・屈折・グロー・ブラー・色補正など
最近では Unigine ベンチマークはシステムをオーバークロックしようとしているユーザーによって使用されています。特に Heaven はオーバークロックの初期安定性テストに使われています。
ベンチマークは AUR から利用可能です (下のリンクを参照)。
参照:
- unigine-heavenAUR
- unigine-tropicsAUR
- unigine-sanctuaryAUR
- unigine-valleyAUR
- unigine-superpositionAUR
vkmark
vkmark is an extensible Vulkan benchmarking suite with targeted, configurable scenes.
vkmark is available in vkmark-gitAUR package.
Blender-benchmark
Blender-benchmark will gather information about the system, such as operating system, RAM, graphics cards, CPU model, as well as information about the performance of the system during the execution of the benchmark. After that, the user will be able to share the result online on the Blender Open Data platform, or to save the data locally.
Blender-benchmark is available in the blender-benchmarkAUR package.