ハードウェアの性能を比較する団体としてSPEC(Standard Performance Evaluation Corporation)【呼称はスペックでよいと思います】があります。
コンピューターの性能を評価するために使われるベンチマークテストの標準化を目的とした団体でCPU性能、数値演算性能、Web性能などのベンチマークプログラムの管理・配布を行っています。
性能を数値化(SPEC値)してくれているので、設計の根拠を説明する際に便利なのでよく使用しています。アプリケーションの性能はSPEC値をそのままとはいかないですが、第三者が評価した値というのはそれなりに説得力があります。欠点は参加していないハードウェアベンダーがあり、その際には似たような構成(特にintelサーバ)を参考値として使用させて貰っています。
SPEC(Standard Performance Evaluation Corporation) とトップページ
https://www.spec.org/
SPECのような評価基準が弱くなると、クラウドの天下が早まる気がするので、各ハードウェアベンダーは自社に都合が悪いことがあるのかもしれませんが、参加していただきたいところです。
SPECにはColudサービスのベンチマークもあります。
SPECのベンチマークについては相変わらずWikipediaが詳しいのですが、すべての評価を検討しようとしても苦慮することになると思います。
とりあえず、以下の値を見て機種ごとに比較すると良いと思います。
私は以下の2つで代替設計して、会議にかけています。
SPEC CPU 2006
Specint 2006(処理速度)
Specint_rate 2006(スループット)
個人的にSPECを使用するケースは現行モデルとリプレースモデルでの性能比較が主にな利用ケースなので、豊富な機種がある2006バージョンは貴重です。
ご存じの通り、CPUとコア数、スレット数の性能はは必ずしも正比例しないため、処理速度化スループット優先かは動作させるアプリケーションの仕様でて採用すべきCPUは変わります。
処理速度 は仕事の速さ
スループット は時間辺りの仕事の量
上記のように書くと、仕事が早ければ仕事の量も大きくなるはずと単純には考えますがそれはシングルスレットの場合で、マルチコア、マルチスレットの場合にはそうはならない場合がほとんどです。
ディスクのIOPSとスループットの関係と同じようになります。
最後に測定方式の概要を記載しておきます。
測定方式 | 測定の対象 | 演算方式 | コンパイラの最適化 |
SPECint 2006 | 処理速度 | 整数 | 最適化 |
SPECint_base 2006 | 処理速度 | 整数 | 非最適化 |
SPECint_rate 2006 | スループット | 整数 | 最適化 |
SPECint_rate_base2006 | スループット | 整数 | 非最適化 |
SPECfp2006 | 処理速度 | 浮動小数点 | 最適化 |
SPECfp_base2006 | 処理速度 | 浮動小数点 | 非最適化 |
SPECfp_rate2006 | スループット | 浮動小数点 | 最適化 |
SPECfp_rate_base2006 | スループット | 浮動小数点 | 非最適化 |
SPEC CPU 2017
SPEC CPU2017のベンチマーク
Integer speed(intspeed):整数演算の処理速度を評価
Integer rate(intrate):整数演算のスループットを評価
Floating Point speed(fpspeed):浮動小数点演算の処理速度を評価
Floating Point rate(fprate):浮動小数点演算のスループットを評価
コンパイル法はBaseとPeakの2種類があります。
Base:すべてのプログラムで同じコンパイルオプションを使用した結果(標準)
Peak:各プログラムに合わせたコンパイルオプションを使用した結果(最適化)
SPEC CPU2017 をWebで参照。またはCSVをダウンロードすると”600 Peak”などの項目が表示されます。
項目の詳細は下記のSPEC CPU2017のドキュメントを参考してみてください。
https://www.spec.org/cpu2017/Docs/
ご参考まで