目的 コンピュータアーキテクチャが 進歩するにつれて、仕様を見るだけで様々なコンピュータシステムの性能を比較することが難しくなりました。そのため、異なるアーキテクチャを比較できるテストが開発されました。例えば、Pentium 4プロセッサは一般的に Athlon XP やPowerPC プロセッサよりも高いクロック周波数で動作していましたが、これは必ずしも演算能力の向上を意味するものではありませんでした。クロック周波数が低いプロセッサでも、高い周波数で動作するプロセッサと同等、あるいはそれ以上の性能を発揮する可能性がありました。詳しくは、BogoMips とメガヘルツ神話を 参照してください。
ベンチマークは、コンポーネントまたはシステム上の特定の種類のワークロードを模倣するように設計されています。合成ベンチマークは、コンポーネントにワークロードを課すように特別に作成されたプログラムによってこれを実現します。アプリケーションベンチマークは、システム上で実際のプログラムを実行します。アプリケーションベンチマークは通常、特定のシステムにおける実際のパフォーマンスをより正確に測定できますが、合成ベンチマークは、ハードディスク やネットワークデバイスなどの個々のコンポーネントをテストするのに役立ちます。
ベンチマークはCPU設計 において特に重要であり、プロセッサ設計者がマイクロアーキテクチャ上の 意思決定において、性能を測定し、トレードオフを行うための手段となります。例えば、ベンチマークがアプリケーションの主要アルゴリズム を抽出する場合、そのアプリケーションのパフォーマンスに影響を与える要素が含まれます。このような、より小さなコード断片をサイクル精度シミュレータで実行することで、パフォーマンスを向上させるためのヒントが得られます。
1995年頃から、SPEC ベンチマーク集は広く利用されるようになった。
コンピュータ企業は、実際の使用状況を反映していないベンチマークテストでのパフォーマンスを向上させるために、システムを調整することが知られています。ベンチマークは、実際の使用状況をより忠実に再現するように改良されており、調整の効果はアプリケーションのパフォーマンスにも反映されるようになっています。
ソフトウェアベンダーもマーケティングでベンチマークを使用します。例えば、1980年代と1990年代には、競合するリレーショナルデータベース メーカー間で「ベンチマーク戦争」が繰り広げられました。企業は通常、自社製品を最も魅力的に見せるベンチマーク(またはベンチマークの側面)のみを報告します。また、自社製品を最も魅力的に見せるために、ベンチマークの重要性を誤って伝えることも知られています。[ 3 ] [ 4 ]
パフォーマンスが極めて重要な場合、唯一重要なベンチマークは、対象環境のアプリケーションスイートである。
課題 ベンチマークは容易ではなく、予測可能で有用な結論に到達するためには、多くの場合、複数回の反復作業が必要となります。ベンチマークデータの解釈もまた、非常に困難です。以下に、よくある課題の一部を挙げます。
ベンダーは、業界標準のベンチマークに合わせて製品を調整する傾向があります。Norton SysInfo(SI)は、主にマルチプル演算の速度を重視しているため、特に調整しやすいベンチマークです。このようなベンチマーク結果の解釈には、細心の注意を払ってください。 一部のベンダーはベンチマークで「不正行為」をしていると非難されている。つまり、ベンチマークの数値ははるかに高くなるようにシステムを設計しているが、実際の想定されるワークロードではそれほど効果的ではないというのだ。[ 6 ] 多くのベンチマークは計算性能 の速度のみに焦点を当てており、コンピュータシステムの他の重要な機能、例えば以下のような点を無視している。 生のパフォーマンス以外のサービス品質。測定できないサービス品質の例としては、セキュリティ、可用性、信頼性、実行の完全性、保守性、拡張性(特に、迅速かつ中断なく容量を追加または再割り当てできる能力)などが挙げられます。これらのサービス品質の間には、しばしばトレードオフが存在し、ビジネスコンピューティングにおいてはすべてが重要です。トランザクション処理パフォーマンス評議会ベンチマーク仕様は、 ACID 特性テスト、データベース拡張性ルール、およびサービスレベル要件を規定することで、これらの懸念に部分的に対応しています。 一般的に、ベンチマークは総所有コスト(TCO) を測定するものではありません。トランザクション処理パフォーマンス評議会(TPPC)のベンチマーク仕様では、簡略化されたTCO 計算式を用いて、生のパフォーマンス指標に加えて価格/パフォーマンス指標を報告することを規定することで、この懸念に部分的に対応しています。しかし、コストは必然的に部分的なものに過ぎず、ベンダーはベンチマーク専用に価格設定を行い、人為的に低価格な非常に特殊な「ベンチマーク特別」構成を設計することが知られています。ベンチマークパッケージからわずかに逸脱するだけでも、実際の運用でははるかに高い価格が発生します。 設備負荷(スペース、電力、冷却)。消費電力が増えると、ポータブルシステムのバッテリー寿命は短くなり、充電頻度も高くなります。消費電力やスペースを多く消費するサーバーは、冷却制限を含む既存のデータセンターのリソース制約に収まらない可能性があります。ほとんどの半導体はスイッチング速度を上げるために多くの電力を必要とするため、実際にはトレードオフが存在します。ワットあたりの性能 も参照してください。 メモリが大きなコスト要因となる一部の組み込みシステムでは、コード密度を 高めることでコストを大幅に削減できる。 ベンダーのベンチマークは、開発、テスト、災害復旧に 必要なコンピューティング能力を無視する傾向があります。ベンダーは、初期購入価格をできるだけ低く見せるために、本番環境に必要な能力のみを報告したがるのです。 ベンチマークは、特にネットワークトポロジーに敏感な、広範囲に分散したサーバーへの適応に苦慮している。グリッドコンピューティング の出現は、一部のワークロードが「グリッドフレンドリー」である一方で、そうでないものもあるため、ベンチマークを複雑化させている。 ユーザーは、ベンチマークが示すものとは大きく異なるパフォーマンス認識を持つ可能性があります。特に、ユーザーは予測可能性、つまり常にサービスレベル契約 を満たすかそれを上回るサーバーを重視します。ベンチマークは、最大最悪応答時間(リアルタイムコンピューティングの 観点から)や低い標準偏差(ユーザーの観点から)よりも、平均スコア(ITの観点から)を重視する傾向があります。 多くのサーバーアーキテクチャは、使用率が非常に高い(ほぼ100%)レベルになると、性能が著しく低下する(いわゆる「崖から転落する」)ため、ベンチマークではその点を考慮に入れるべきである(しかし、実際には考慮されていないことが多い)。特にベンダーは、サーバーベンチマークを約80%の使用率という非現実的な状況で継続的に実施し、そのレベルを超えて需要が急増した場合にシステム全体に何が起こるかを文書化していない傾向がある。 多くのベンチマークは、他のアプリケーションを除外し、1つのアプリケーション、あるいは1つのアプリケーション層のみに焦点を当てています。現在、多くのデータセンターはさまざまな理由から仮想化を 大規模に導入しており、ベンチマークは、複数のアプリケーションとアプリケーション層が統合サーバー上で同時に稼働するという現実にまだ追いついていません。 バッチ処理、特に大量の同時バッチ処理やオンライン処理のパフォーマンスを測定するのに役立つ、質の高いベンチマークはほとんど(あるいは全く)存在しません。バッチ処理は、 月末や年度末などの締め切り前に、長時間実行されるタスクを正しく完了できるかどうかの予測可能性に重点を置いています。請求処理など、多くの重要な基幹業務プロセスはバッチ処理を主体としており、今後もそうあり続けるでしょう。 ベンチマーク機関は、基本的な科学的方法を無視したり、それに従わないことがよくあります。これには、サンプルサイズが小さいこと、変数制御が欠如していること、結果の再現性が限られていることなどが含まれますが、これらに限定されません。[ 7 ]
ベンチマーキングの原則 ベンチマークには7つの重要な特性があります。[ 8 ] これらの重要な特性は次のとおりです。
関連性:ベンチマークは、比較的重要な特性を測定するべきである。 代表性:ベンチマークとなるパフォーマンス指標は、産業界と学術界の両方で広く受け入れられるべきである。 公平性:すべての制度は公平に比較されるべきである。 再現性:ベンチマーク結果を検証できる。 費用対効果:ベンチマークテストは経済的である。 拡張性:ベンチマークテストは、リソースの少ないシステムから多いシステムまで、幅広いリソースを持つシステムで動作する必要があります。 透明性:ベンチマーク指標は理解しやすいものでなければならない。
ベンチマークの種類 実際のプログラム コンポーネントベンチマーク/マイクロベンチマーク コアルーチンは、比較的小さく特定のコードで構成されている。 コンピュータの基本コンポーネントの性能を測定する[ 9 ] レジスタ数、キャッシュ サイズ、メモリレイテンシ など、コンピュータのハードウェアパラメータを自動的に検出するために使用できます。 カーネル キーコードが含まれています 通常は実際のプログラムから抽象化されている 人気のカーネル: リバモアループ linpackベンチマーク(FORTRAN言語で記述された基本的な線形代数サブルーチンを含む) 結果はMflop/s単位で表されます。 合成ベンチマーク 合成ベンチマークのプログラミング手順: 多数のアプリケーションプログラムからあらゆる種類の操作の統計を取得する 各操作の割合を取得する 上記の比率に基づいてプログラムを作成する 合成ベンチマークの種類は以下のとおりです。 これらは、業界標準の汎用コンピュータベンチマークの最初の例です。現代のパイプライン処理型コンピュータでは、必ずしも高いスコアが得られるとは限りません。 入出力ベンチマーク データベースベンチマーク データベース管理システム(DBMS)のスループットと応答時間を測定する 並列ベンチマーク 複数のコアやプロセッサを搭載したマシン、または複数のマシンで構成されるシステムで使用される。
参考文献 ↑ Fleming, Philip J.; Wallace, John J. (1986-03-01). "統計で嘘をつかない方法: ベンチマーク結果を要約する正しい方法" . Communications of the ACM . 29 (3): 218–221 . doi : 10.1145/5666.5673 . ISSN 0001-0782 . S2CID 1047380 . ↑ Grambow, Martin; Lehmann, Fabian; Bermbach, David (2019). "Continuous Benchmarking: Using System Benchmarking in Build Pipelines" . 2019 IEEE International Conference on Cloud Engineering (IC2E) . pp. 241–246 . doi : 10.1109/IC2E.2019.00039 . ISBN 978-1-7281-0218-4 2023年12月3日 に取得 。↑ 「RDBMSワークショップ:Informix」 (PDF) (インタビュー)。ルアンヌ・ジョンソンによるインタビュー。コンピュータ歴史博物館。2007年6月12日。 2025年5月30日 取得 。 ↑ 「RDBMSワークショップ:IngresとSybase」 (PDF) (インタビュー)。インタビュー:Doug Jerger。コンピュータ歴史博物館。2007年6月13日。 2025年5月30日 取得 。 ↑ ソフトウェア:HDDScan、GNOME Disks ↑ クラジット、トム (2003)。 「NVIDIAのベンチマーク戦術の再評価」 。IDG ニュース 。 2011年6月6日の オリジナル からアーカイブ。 2009年8月8日 取得 。 ↑ Castor, Kevin (2006). "ハードウェアテストとベンチマークの方法論" . 2008年2月5日に オリジナルからアーカイブ済み 。 2008年2月24日 に取得。 ↑ Dai, Wei; Berleant, Daniel (2019年12月12日~14日) 「現代の深層学習ハードウェアとフレームワークのベンチマーク:定性的指標の調査」 (PDF) . 2019 IEEE First International Conference on Cognitive Machine Intelligence (CogMI) . Los Angeles, CA, USA: IEEE. pp. 148–155 . arXiv : 1907.03626 . doi : 10.1109/CogMI48466.2019.00029 . ↑ Ehliar, Andreas; Liu, Dake. 「ネットワークプロセッサのベンチマーク」 (PDF) 。 ↑ トランザクション処理パフォーマンス評議会(1998年2月)。 「TPCの歴史と概要」 。TPC 。 トランザクション処理パフォーマンス評議会 。 2018年7月2日 取得 。
さらに読む Gray, Jim 編 (1993).データベースおよびトランザクションシステムのベンチマークハンドブック 。Morgan Kaufmann データ管理システムシリーズ (第 2 版)。Morgan Kaufmann Publishers, Inc. ISBN 1-55860-292-5 。 Scalzo, Bert; Kline, Kevin; Fernandez, Claudia; Burleson, Donald K.; Ault, Mike (2007). Database Benchmarking Practical Methods for Oracle & SQL Server . Rampant TechPress. ISBN 978-0-9776715-3-3 。 ナンビア、ラグナート、ポエス、メイケル編 (2009)。パフォーマンス評価とベンチマーキング 。シュプリンガー。ISBN 978-3-642-10423-7 。
外部リンク Lewis, Byron C.; Crews, Albert E. (1985). "コンピュータ性能評価手法としてのベンチマーキングの進化" . MIS Quarterly . 9 (1): 7– 16. doi : 10.2307/249270 . ISSN 0276-7783 . JSTOR 249270 . 日付:1962年~1976年