JP2009015437A - ベンチマークテスト装置 - Google Patents
ベンチマークテスト装置 Download PDFInfo
- Publication number
- JP2009015437A JP2009015437A JP2007174153A JP2007174153A JP2009015437A JP 2009015437 A JP2009015437 A JP 2009015437A JP 2007174153 A JP2007174153 A JP 2007174153A JP 2007174153 A JP2007174153 A JP 2007174153A JP 2009015437 A JP2009015437 A JP 2009015437A
- Authority
- JP
- Japan
- Prior art keywords
- benchmark
- hardware
- input
- program
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【課題】ハードウエアやOSのアーキテクチャの変更に対応することが可能なベンチマークテスト装置を提供すること。
【解決手段】ハードウエア条件の入力を受け付けるハードウエア条件入力受付手段(21)と、ハードウエア条件入力受付手段に対して入力されたハードウエア条件に基づいてベンチマークプログラムを生成するベンチマークプログラム生成手段(33)と、ベンチマークプログラム生成手段により生成されたベンチマークプログラムに基づくシミュレーションを実行してベンチマークを出力するシミュレーション実行手段(34)と、を備えるベンチマークテスト装置(1)。
【選択図】図1
【解決手段】ハードウエア条件の入力を受け付けるハードウエア条件入力受付手段(21)と、ハードウエア条件入力受付手段に対して入力されたハードウエア条件に基づいてベンチマークプログラムを生成するベンチマークプログラム生成手段(33)と、ベンチマークプログラム生成手段により生成されたベンチマークプログラムに基づくシミュレーションを実行してベンチマークを出力するシミュレーション実行手段(34)と、を備えるベンチマークテスト装置(1)。
【選択図】図1
Description
本発明は、コンピュータシステムのハードウエアやソフトウエアの性能を評価するベンチマークテスト装置に関する。
従来、コンピュータシステムのハードウエアやソフトウエアの性能を測定するためのテストが、ベンチマークテストと称されている。また、結果として出力される指標(或いは測定プログラム自体)が、ベンチマークと称されている。以下、出力される指標をベンチマークと、測定プログラムをベンチマークプログラムと称する。
ベンチマークテストには、実際に被験対象であるコンピュータないしソフトウエアを作動させて行なうテストと、ベンチマークプログラムを実行することによりシミュレーションとして行なうテストとが存在する。後者の例として、評価対象に類似した複数の類似プログラム・ソースコードを装置内部に入力するソースコード入力手段を備えるコンピュータシステムの性能評価プログラム生成装置についての発明が開示されている(例えば、特許文献1参照)。この装置では、入力された各類似プログラム・ソースコードを解析して処理命令の発生数を抽出し、この発生数に基づいてベンチマークテスト・プログラム(ベンチマークプログラム)を生成するものとしている。
特開11−296399号公報
しかしながら、上記従来の装置では、ソフトウエアの性能を、ある程度汎用的に測定することができるものの、ハードウエアやOS(Operating System)の変更に対応することができない。
本発明はこのような課題を解決するためのものであり、ハードウエアやOSのアーキテクチャの変更に対応することが可能なベンチマークテスト装置を提供することを、主たる目的とする。
上記目的を達成するための本発明の一態様は、ハードウエア条件の入力を受け付けるハードウエア条件入力受付手段と、ハードウエア条件入力受付手段に対して入力されたハードウエア条件に基づいてベンチマークプログラムを生成するベンチマークプログラム生成手段と、ベンチマークプログラム生成手段により生成されたベンチマークプログラムに基づくシミュレーションを実行してベンチマークを出力するシミュレーション実行手段と、を備えるベンチマークテスト装置である。
この本発明の一態様によれば、ハードウエア条件入力受付手段に対して入力されたハードウエア条件に基づいてベンチマークプログラムを生成するため、ハードウエアのアーキテクチャの変更に対応することができる。
本発明の一態様において、現実のハードウエアを使用して得られたベンチマークの入力を受け付けるベンチマーク入力受付手段を備え、ベンチマークプログラム生成手段は、シミュレーション実行手段の出力と、ベンチマーク入力受付手段に対して入力されたベンチマークと、の比較に基づき、ベンチマークプログラムの生成手法を変更する手段であるものとしてもよい。
また、本発明の一態様において、OS条件情報を取得するOS条件情報取得手段を備え、ベンチマークプログラム生成手段は、OS条件情報取得手段により取得されたOS条件に基づいてベンチマークプログラムを生成する手段であるものとしてもよい。
また、本発明の一態様において、ハードウエア条件入力受付手段が受け付けるハードウエア条件は、CPU種別及びCPUバージョンを含むものとしてもよい。
本発明によれば、ハードウエアやOSのアーキテクチャの変更に対応することが可能なベンチマークテスト装置を提供することができる。
以下、本発明を実施するための最良の形態について、添付図面を参照しながら実施例を挙げて説明する。
以下、本発明の一実施例に係るベンチマークテスト装置1について説明する。ベンチマークテスト装置1は、例えば、CPU、RAM、ROM、HDD等がバスを介して接続されたECU(Electronic Control Unit)等のコンピューターユニットとして構成される。図1は、ベンチマークテスト装置1が有する機能ブロックを示す図である。ベンチマークテスト装置1は、ROMに記憶されたプログラムがRAM上に展開(ロード)されることにより機能する機能ブロックとして、ベンチマークソース管理部10と、ハードウエア情報管理部20と、ベンチマークプログラム生成部30と、ベンチマーク結果管理部40と、を備える。
ベンチマークソース管理部10は、ハードウエアに依存しないベンチマークテスト対象のソース管理を行なう部分であり、ソースコード入力部11と、ソースコード解析部12と、解析結果データベース13と、を有する。
ソースコード入力部11は、ベンチマークテスト対象となるソースコードの登録部である。ソースコードの言語は特定されないが、例えば、アセンブラレベルではなく、C言語等、ハードウエアに依存しないレベルのソースコードとして登録が行なわれる。ソースコードの登録は、記憶媒体の連結、挿入、接続、或いは有線又は無線通信による情報の転送等によって行なわれる。
ソースコード解析部12は、ソースコード入力部11に入力されたソースコードの解析部である。
解析結果データベース13は、ソースコード解析部12の解析結果を格納するデータベースである。解析結果データベース13に格納される情報は、例えば、使用命令種類、命令数、プロセス間通信、メモリアクセスの頻度・データサイズ、デバイスアクセスの頻度・サイズが含まれる。なお、デバイスとは、キャラクターデバイス、ブロックデバイス、ネットワークデバイス等をいう。
ハードウエア情報管理部20は、ハードウエア条件入力部21と、ハードウエア情報データベース22と、OSベンチマーク用ライブラリ23と、を有する。
ハードウエア条件入力部21は、ベンチマークプログラムを生成する際の条件として、ベンチマークテスト対象となるハードウエアの情報の入力を受け付ける。入力受付可能な情報は、CPU関連として、CPU種別、CPUバージョン、CPU命令セットのオプション対応有無情報、CPUクロック、CPUI数等である。また、メモリ関連としては、キャッシュの有無、キャッシュサイズ、キャッシュWayサイズ、主記憶タイプ、主記憶メモリ容量、主記憶動作速度等であり、バス関連としては、バス及びプロトコルの種別、バス動作速度等である。その他、グラフィック性能、ネットワーク性能、ストレージ性能等の情報入力を受け付け可能であってもよい。
ハードウエア情報データベース22は、ハードウエア条件入力部21に対して入力された情報を格納するデータベースであり、例えば、RDB(relational database;1件のデータを複数の項目(フィールド)の集合として表現し、データの集合をテーブルと呼ばれる表で表す方式)の方式によって情報を保持し、各項目の更新・変更に柔軟に対応可能となっている。
OSベンチマーク用ライブラリ23は、ハードウエア上に搭載されるOS(Operating System)を対象とするベンチマークプログラムを備える。OSの性能(ファイルシステムやシステムコール、スケジューラの実装方法)によって、システムの性能が大きく変化するからである。ここで、ファイルシステムとは、抽象データ型の集まりであり、ストレージ、階層構造、データの操作・アクセス・検索のために実装されたものである。また、システムコールとは、OSのカーネルの機能を呼び出すために使用される機構、或いはOSの備えるAPI関数をいう。
OSベンチマーク用ライブラリ23に格納されたベンチマークプログラムとしては、例えば、ファイルシステム性能を測定するもの(iobench等)、ネットワーク性能を測定するもの(netperf等)、スケジューラ性能を測定するもの、演算性能を測定するもの(dhrystone等)、グラフィック描画性能を測定するもの(×11perf、glperf等)、リアルタイム応答性能を測定するもの、等が挙げられる。
ベンチマークプログラム生成・実行部30は、ハードウエアに対応したベンチマークプログラムを生成する機能ブロックであり、プログラム生成用ライブラリ31と、アルゴリズム更新部32と、ベンチマークプログラム生成部33と、ベンチマークプログラム実行部34と、を有する。
プログラム生成用ライブラリ31は、ベンチマークプログラムを生成する為のライブラリである。例えば、DhrystoneやWhetstone等の基本的なベンチマークプログラムを保持する。また、科学技術演算ライブラリ等をシステムとして評価するための、合成ベンチマークプログラムのライブラリを含んでよい。
アルゴリズム更新部32は、ベンチマークプログラムのアルゴリズムを更新、或いは新規登録する機能を有する。本機能ブロックにより、ベンチマークプログラムの機能が陳腐化した際に、随時新しいものを追加することができる。
ベンチマークプログラム生成部33は、ハードウエア情報データベース22に格納された情報に基づいて、プログラム生成用ライブラリ31及びOSベンチマーク用ライブラリ23からベンチマークプログラムを適切に選択(及び合成等)し、ベンチマークプログラム実行部34が実行できる形式の実行バイナリを生成する。ベンチマークプログラムを選択等する際の情報(条件)は、ベンチマークプログラム生成部33の記憶部に保持されており、アルゴリズム更新部32により随時変更される。
ベンチマークプログラム実行部34は、ベンチマークプログラム生成部33により生成された実行バイナリを用いて、入力されたハードウエア条件に基づく機能をエミュレーションし、ベンチマークを出力するためのシミュレーションを実行する。
係る機能によって、ハードウエアやOSの変更に柔軟に対応することができる。従来のベンチマークテスト装置では、テスト対象となるコンピュータシステムにおいて、その前提条件となるハードウエアやOSの性能(CPUクロック等)が変更された際に、パラメータ変更等を行なってベンチマークを補正することは可能であるが、ハードウエアやOSのアーキテクチャ(設計思想)が変更された場合には対応することができなかった。この点、本実施例のベンチマークテスト装置1では、ベンチマークプログラムのアルゴリズムやライブラリからのプログラム選択(及び合成等)の手法を変更するため、ハードウエアやOSのアーキテクチャ変更にも対応することができる。
ベンチマーク結果管理部40は、ベンチマーク結果入力部41及びベンチマーク結果蓄積部42を有する。
ベンチマーク結果入力部41は、本装置によるシミュレーション結果としてのベンチマークではなく、現実のハードウエアを使用して得られたベンチマークの入力を受け付ける。
ベンチマーク結果蓄積部42は、ベンチマーク結果入力受付部40に対して入力されたベンチマークを格納する。そして、本装置によるシミュレーション結果としてのベンチマークとの比較に基づいて、アルゴリズム更新部32やベンチマークプログラム生成部33に対して、ベンチマークプログラムの選択(及び合成等)やアルゴリズム自体についての修正指示を出力する。
係る機能によって、本装置によるシミュレーション結果としてのベンチマークが、現実の性能から乖離している場合に、これを適切に修正することができる。従って、コンピュータシステムの性能をより正確に測定することができる。
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
本発明は、自動車製造業や自動車部品製造業等に利用可能である。
1 ベンチマークテスト装置
10 ベンチマークソース管理部
11 ソースコード入力部
12 ソースコード解析部
13 解析結果データベース
20 ハードウエア情報管理部
21 ハードウエア条件入力部
22 ハードウエア情報データベース
23 OSベンチマーク用ライブラリ
30 ベンチマークプログラム生成・実行部
31 プログラム生成用ライブラリ
32 アルゴリズム更新部
33 ベンチマークプログラム生成部
34 ベンチマークプログラム実行部
40 ベンチマーク結果管理部
41 ベンチマーク結果入力部
42 ベンチマーク結果蓄積部
10 ベンチマークソース管理部
11 ソースコード入力部
12 ソースコード解析部
13 解析結果データベース
20 ハードウエア情報管理部
21 ハードウエア条件入力部
22 ハードウエア情報データベース
23 OSベンチマーク用ライブラリ
30 ベンチマークプログラム生成・実行部
31 プログラム生成用ライブラリ
32 アルゴリズム更新部
33 ベンチマークプログラム生成部
34 ベンチマークプログラム実行部
40 ベンチマーク結果管理部
41 ベンチマーク結果入力部
42 ベンチマーク結果蓄積部
Claims (4)
- ハードウエア条件の入力を受け付けるハードウエア条件入力受付手段と、
前記ハードウエア条件入力受付手段に対して入力されたハードウエア条件に基づいてベンチマークプログラムを生成するベンチマークプログラム生成手段と、
該ベンチマークプログラム生成手段により生成されたベンチマークプログラムに基づくシミュレーションを実行してベンチマークを出力するシミュレーション実行手段と、
を備えるベンチマークテスト装置。 - 請求項1に記載のベンチマークテスト装置であって、
現実のハードウエアを使用して得られたベンチマークの入力を受け付けるベンチマーク入力受付手段を備え、
前記ベンチマークプログラム生成手段は、前記シミュレーション実行手段の出力と、前記ベンチマーク入力受付手段に対して入力されたベンチマークと、の比較に基づき、前記ベンチマークプログラムの生成手法を変更する手段である、
ベンチマークテスト装置。 - 請求項1又は2に記載のベンチマークテスト装置であって、
OS条件情報を取得するOS条件情報取得手段を備え、
前記ベンチマークプログラム生成手段は、前記OS条件情報取得手段により取得されたOS条件に基づいてベンチマークプログラムを生成する手段である、
ベンチマークテスト装置。 - 請求項1ないし3のいずれかに記載のベンチマークテスト装置であって、
前記ハードウエア条件入力受付手段が受け付けるハードウエア条件は、CPU種別及びCPUバージョンを含む、
ベンチマークテスト装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007174153A JP2009015437A (ja) | 2007-07-02 | 2007-07-02 | ベンチマークテスト装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2007174153A JP2009015437A (ja) | 2007-07-02 | 2007-07-02 | ベンチマークテスト装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2009015437A true JP2009015437A (ja) | 2009-01-22 |
Family
ID=40356296
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2007174153A Pending JP2009015437A (ja) | 2007-07-02 | 2007-07-02 | ベンチマークテスト装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2009015437A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104331070A (zh) * | 2014-10-27 | 2015-02-04 | 哈尔滨东安汽车发动机制造有限公司 | 一种整车对标测试系统 |
-
2007
- 2007-07-02 JP JP2007174153A patent/JP2009015437A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104331070A (zh) * | 2014-10-27 | 2015-02-04 | 哈尔滨东安汽车发动机制造有限公司 | 一种整车对标测试系统 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10268454B2 (en) | Methods and apparatus to eliminate partial-redundant vector loads | |
| US9507688B2 (en) | Execution history tracing method | |
| CN105183592B (zh) | 用于支持性能分析的方法和装置 | |
| US20170255877A1 (en) | Heterogeneous computing method | |
| KR20190031030A (ko) | 바이너리 파일에 기초하여 오픈소스 소프트웨어 패키지를 식별하는 방법 및 시스템 | |
| US20170097812A1 (en) | Automated and heuristically managed solution to quantify cpu and path length cost of instructions added, changed or removed by a service team | |
| US11995096B2 (en) | Creation of message serializer for event streaming platform | |
| US9182960B2 (en) | Loop distribution detection program and loop distribution detection method | |
| JP5440287B2 (ja) | シンボリック実行支援プログラム、方法及び装置 | |
| EP2972880B1 (en) | Kernel functionality checker | |
| JP5936135B2 (ja) | 情報処理装置、情報処理方法、及び、プログラム | |
| US20190042259A1 (en) | Methods and apparatus to insert profiling instructions into a graphics processing unit kernel | |
| Ding et al. | APMT: an automatic hardware counter-based performance modeling tool for HPC applications | |
| US8555030B2 (en) | Creating multiple versions for interior pointers and alignment of an array | |
| Izsó et al. | MONDO-SAM: A Framework to Systematically Assess MDE Scalability. | |
| JP2009015437A (ja) | ベンチマークテスト装置 | |
| CN114237705B (zh) | 验证方法、装置、电子设备和计算机可读存储介质 | |
| US8370797B2 (en) | Data processing apparatus, method therefor, and computer program | |
| Kadi | Measuring Maintainability and latency of Node. js frameworks | |
| US20090235223A1 (en) | Program generation apparatus and program generation method | |
| JP4870956B2 (ja) | 組み込み用プログラム生成方法、組み込み用プログラム開発システム、及び情報テーブル部 | |
| JP6519530B2 (ja) | 検証装置、検証プログラム、及び、検証方法 | |
| Nozdrzykowski et al. | Testing the significance of parameters of models estimating execution time of parallel program loops according to the Open MPI Standard | |
| JP2012018641A (ja) | ソフトウェア開発システム | |
| US10534691B2 (en) | Apparatus and method to improve accuracy of performance measurement for loop processing in a program code |