SPECfp は、コンピュータの浮動小数点演算性能をテストするために設計されたコンピュータ ベンチマークです。これはStandard Performance Evaluation Corporationによって管理されています。SPECfp は、SPEC CPU テスト スイートの浮動小数点演算性能テスト コンポーネントです。最初の標準 SPECfp は 1989 年に SPECfp89 としてリリースされました[ 1 ]。その後、SPECfp92、SPECfp95、SPECfp2000、SPECfp2006、そして最終的に SPECfp2017 に置き換えられました。
SPEC CPU2017は、CPUのパフォーマンスをテストするために設計されたベンチマークアプリケーションスイートです。このスイートは2つのテストセットで構成されています。1つ目はCINT(別名SPECint)で、CPUの整数演算パフォーマンスを評価するためのものです。2つ目はCFP(別名SPECfp)で、CPUの浮動小数点演算パフォーマンスを評価するためのものです。
ベンチマークアプリケーションは、物理シミュレーション、3Dグラフィックス、画像処理など、リアルタイムの状況をシミュレートする一連の操作を実行するプログラムです。これらのアプリケーションは、C、C++、Fortranといった様々なプログラミング言語で記述されています。SPECfpベンチマークアプリケーションの多くは、一般に公開されているアプリケーションを基に作成されており、各アプリケーションには重要度に応じて重みが割り当てられています。
SPECfpスコアを算出するには、ベンチマークアプリケーションを基準マシン上で実行し、各アプリケーションの完了時間を基準時間として記録します。別のマシンのパフォーマンスを評価する際には、そのシステム上でベンチマークアプリケーションを実行し、完了時間を記録します。次に、記録された時間と基準時間の比率を計算します。そして、すべてのベンチマークスイートアプリケーションの比率の幾何平均をSPECfpスコアとして算出します。
例えば、126.gcc アプリケーションはAlphaStation 200 4/100 では完了までに 1280 秒かかりますが、参照マシンでは 1700 秒かかります。したがって、比率は 1700/1280 = 1.328 となり、これは AlphaStation 200 4/100 が 126.gcc の実行において参照マシンより 32.8% 高速であることを意味します。[ 1 ]
SPECfp2017 テストは、SPECrate 2017 Floating PointとSPECspeed 2017 Floating Point の2 つのスイートで構成され、合計 23 個のベンチマーク プログラムが含まれており、特定のシステムの浮動小数点演算のパフォーマンスを評価するように設計されています。[ 2 ]このスイートは 2017 年 6 月 2 日にリリースされ、2018 年 1 月時点で SPECfp2006 に取って代わりました。
SPECfp2006 テストスイートには、特定のシステムの浮動小数点演算のパフォーマンスを評価するように設計された 17 個のベンチマーク プログラムが含まれています。これらのプログラムのうち 3 個は C 言語で、4 個は C++ 言語で、6 個は Fortran 言語で、4 個は C 言語と Fortran 言語の両方で記述されています。このスイートは 2006 年 8 月 24 日にリリースされ[ 3 ]、2007 年 2 月時点で SPECfp2000 に取って代わりました[ 4 ]。
ベンチマークプログラムは次のとおりです。[ 5 ]
SPECfp2000 テストスイートには、特定のシステムの浮動小数点演算のパフォーマンスを評価するために設計された 14 個のベンチマーク プログラムが含まれています。これらのプログラムのうち 4 つは C 言語で、6 つは Fortran 77 言語で、4 つは Fortran 90 言語で記述されています。このスイートは 1999 年 12 月 30 日にリリースされ[ 4 ]、2000 年 7 月時点で SEPCfp95 に取って代わりました[ 6 ]。このスイートは現在廃止されています。
ベンチマークプログラムは次のとおりです。[ 7 ]
SPECfp95テストスイートには、特定のシステムの浮動小数点演算のパフォーマンスを評価するために設計された10個のベンチマークプログラムが含まれています。このスイートは1995年3月にリリースされ、1995年9月にはSEPCfp92に取って代わりました。[ 6 ]このスイートは現在廃止されています。
ベンチマークプログラムは次のとおりです。[ 8 ]
SPECfp92 テストスイートには、特定のシステムの浮動小数点演算のパフォーマンスを評価するように設計された 14 個のベンチマーク プログラムが含まれています。これらのプログラムのうち 12 個は Fortran で、2 個は C で記述されています。このスイートは 1995 年に SPECfp89 に代わってリリースされました。[ 9 ]このスイートのリリースに伴い、ベースライン ルールが導入されました。このルールでは、ベンダーは報告せずにコードのコンパイルを最適化することは許可されなくなりました。[ 10 ]このスイートは現在廃止されています。
ベンチマークプログラムは次のとおりです。[ 11 ]