JP2994280B2 - Computer system performance evaluation method - Google Patents

Computer system performance evaluation method

Info

Publication number
JP2994280B2
JP2994280B2 JP8286534A JP28653496A JP2994280B2 JP 2994280 B2 JP2994280 B2 JP 2994280B2 JP 8286534 A JP8286534 A JP 8286534A JP 28653496 A JP28653496 A JP 28653496A JP 2994280 B2 JP2994280 B2 JP 2994280B2
Authority
JP
Japan
Prior art keywords
instruction
cache
execution
execution clock
hit
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.)
Expired - Fee Related
Application number
JP8286534A
Other languages
Japanese (ja)
Other versions
JPH10133902A (en
Inventor
達哉 皆川
Original Assignee
米沢日本電気株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 米沢日本電気株式会社 filed Critical 米沢日本電気株式会社
Priority to JP8286534A priority Critical patent/JP2994280B2/en
Publication of JPH10133902A publication Critical patent/JPH10133902A/en
Application granted granted Critical
Publication of JP2994280B2 publication Critical patent/JP2994280B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、計算機システムに
関し、特に計算機システムの性能評価方法に関するもの
である。
The present invention relates to a computer system, and more particularly to a method for evaluating the performance of a computer system.

【0002】[0002]

【従来の技術】近年の半導体技術の進展に伴い、様々な
アーキテクチャの計算機が考案され、実用化されてい
る。
2. Description of the Related Art With the recent development of semiconductor technology, computers of various architectures have been devised and put into practical use.

【0003】初期の計算機システムは、構成が比較的単
純であったため、その処理能力は中央演算装置(CP
U)に大きく依存していたが、さらなる処理能力向上の
ため、階層的メモリ構造、多重バス、ライトバッファ等
を装備するようになり、アーキテクチャは複雑化しつつ
ある。その結果、計算機システムの性能は、CPU自体
の処理能力だけではなく、前記メモリ、I/O、バス等
計算機全体のアーキテクチャに強く依存するようになっ
た。このため、計算機を開発、あるいは特定の計算機シ
ステムで応用プログラムを高速に動作させるためには、
アーキテクチャに合わせてハードウェアを最適化する必
要がある。
[0003] Since the computer system in the early days had a relatively simple configuration, its processing capability was limited to a central processing unit (CP).
U), but the architecture is becoming more and more complicated with a hierarchical memory structure, multiple buses, write buffers, etc., for further improving the processing capability. As a result, the performance of the computer system strongly depends not only on the processing capability of the CPU itself but also on the architecture of the entire computer such as the memory, I / O, and bus. Therefore, in order to develop a computer or run an application program at a high speed on a specific computer system,
Hardware needs to be optimized for the architecture.

【0004】以上のような背景の下、事前にハードウェ
ア・アーキテクチャの動作をシミュレーションにより求
め、その動作を最適化するための技術として性能評価の
技術が注目されつつある。
[0004] Under the above-mentioned background, a technique of performance evaluation has been attracting attention as a technique for optimizing the operation of a hardware architecture in advance by simulating the operation of the hardware architecture.

【0005】従来の性能評価方法は、キャッシュメモリ
およびメインメモリの厳密な動作モデルを用意し、評価
対象プログラムの各命令毎にメモリアクセスの有無を判
定し、命令がメモリアクセス命令を含む場合、命令の参
照アドレスからキャッシュの動作を厳密に評価し、キャ
ッシュヒット/ミスを判定する。また、キャッシュミス
の場合、参照アドレスからメインメモリの動作を厳密に
評価し、ページヒット/ミスを判定する。これらのメモ
リの厳密な評価をすべての実行命令について実施する。
In the conventional performance evaluation method, a strict operation model of a cache memory and a main memory is prepared, and it is determined whether or not a memory access is made for each instruction of a program to be evaluated. Strictly evaluates the operation of the cache from the reference address, and determines a cache hit / miss. In the case of a cache miss, the operation of the main memory is strictly evaluated from the reference address, and a page hit / miss is determined. A rigorous evaluation of these memories is performed for every executable instruction.

【0006】[0006]

【発明が解決しようとする課題】上述した従来の計算機
システムの性能評価方法は、キャッシュメモリおよびメ
インメモリの詳細な動作モデルを用意し、評価するた
め、正確な性能見積もりが可能であるが、評価に多大な
時間を要し、また、メモリの詳細な動作モデルが必要で
あり、キャッシュヒット率、ページヒット率をパラメー
タとしてプログラムの実行時間を求めることが困難であ
るという問題があった。
The above-described conventional method for evaluating the performance of a computer system prepares and evaluates detailed operation models of the cache memory and the main memory, so that accurate performance estimation can be performed. Requires a large amount of time, requires a detailed operation model of the memory, and has a problem that it is difficult to obtain the execution time of the program using the cache hit ratio and the page hit ratio as parameters.

【0007】本発明の目的は、キャッシュメモリおよび
メインメモリの詳細な動作モデルを必要とせず、高速な
性能評価を実現する計算機システムの性能評価方法を提
供することにある。
An object of the present invention is to provide a computer system performance evaluation method which realizes high-speed performance evaluation without requiring detailed operation models of a cache memory and a main memory.

【0008】[0008]

【課題を解決するための手段】本発明の計算機システム
の性能評価方法は、評価対象のプログラムの命令を実行
順番に沿って取り出し、前記命令のメモリアクセスの有
無を判定し、メモリアクセスを含まない場合は、CPU
の各実行命令を実行するのに必要なクロック数の情報を
格納する実行クロックテーブルから前記命令の実行クロ
ック数を求めて前記総実行クロック数カウンタに加算
し、前記命令がメモリアクセスを含む場合は、命令の参
照アドレスおよびキャッシュメモリアクセス時のキャッ
シュヒット率パラメータからキャッシュヒット/ミスを
確率的に判定し、キャッシュヒットの場合は、前記実行
クロックテーブルよりキャッシュアクセスに要するクロ
ック数を求めて前記総実行クロック数カウンタに加算
し、キャッシュミスの場合は、命令の参照アドレスおよ
びメモリアクセス時のページヒット率パラメータからペ
ージヒット/ミスを確率的に判定し、ページヒット/ミ
スに応じて前記実行クロックテーブルよりメモリアクセ
スに要するクロック数を求めて前記総実行クロック数カ
ウンタに加算し、前記評価対象プログラムを実行する総
クロック数を求めることを特徴とする。
A computer system performance evaluation method according to the present invention fetches instructions of a program to be evaluated in the order of execution, determines whether the instructions have memory access, and does not include memory accesses. If the CPU
The number of execution clocks of the instruction is obtained from an execution clock table that stores information on the number of clocks necessary to execute each execution instruction of the above instruction, and is added to the total execution clock counter.If the instruction includes a memory access, , A cache hit / miss is stochastically determined from a reference address of an instruction and a cache hit rate parameter at the time of cache memory access, and in the case of a cache hit, the number of clocks required for cache access is obtained from the execution clock table to execute the total execution. In the case of a cache miss, a page hit / miss is determined stochastically from the reference address of the instruction and a page hit rate parameter at the time of memory access, and the execution clock table is determined according to the page hit / miss. Number of clocks required for memory access Calculated by adding the total execution clock counter, and obtains the total number of clocks for executing said evaluation object program.

【0009】[0009]

【発明の実施の形態】次に、本発明の実施例について、
図面を参照して詳細に説明する。
Next, an embodiment of the present invention will be described.
This will be described in detail with reference to the drawings.

【0010】図1は、本発明の性能評価方法の一実施例
を示すフロー図である。図1に示すように、総実行クロ
ック数カウンタを初期化し(11)、評価対象プログラ
ムから実行する1命令を取り出す(12)。次に、取り
出した命令は、そのビット列をチェックされ、メモリア
クセスを含む命令か、ALUのみを使用する命令かが判
断される(13)。
FIG. 1 is a flowchart showing one embodiment of the performance evaluation method of the present invention. As shown in FIG. 1, the total execution clock counter is initialized (11), and one instruction to be executed is extracted from the evaluation target program (12). Next, the extracted instruction is checked for its bit string, and it is determined whether the instruction includes a memory access or an instruction using only the ALU (13).

【0011】メモリアクセスを含まない場合は、実行ク
ロックテーブルを用いて各命令に対応した実行クロック
数を求め、総実行クロック数カウンタに加算する(1
4)。命令がメモリアクセスを含む場合は、あらかじめ
与えられたキャッシュヒット率から確率関数を使用して
キャッシュヒット/ミスを判定する。確率関数は、たと
えばランダム関数を利用して0から1.0までの数字を
ランダムに発生させ、あらかじめ設定したキャッシュヒ
ット率(0<キャッシュヒット率<1.0)と比較する
ことにより実現される。
When the memory access is not included, the number of execution clocks corresponding to each instruction is obtained by using the execution clock table and added to the total execution clock number counter (1).
4). When the instruction includes a memory access, a cache hit / miss is determined using a probability function from a cache hit rate given in advance. The probability function is realized by randomly generating a number from 0 to 1.0 using a random function, for example, and comparing it with a preset cache hit rate (0 <cache hit rate <1.0). .

【0012】キャッシュヒットと判定した場合は、実行
クロックテーブルよりキャッシュアクセスに要するクロ
ック数を求め、総実行クロック数カウンタに加算する
(17)。キャッシュミスと判定した場合、あらかじめ
与えられたページヒット率から確率関数を使用してメモ
リアクセス時のページヒット/ミスを判定する。確率関
数は、前記キャッシュヒット/ミスの判定と同様な原理
で実現される。
If a cache hit is determined, the number of clocks required for cache access is obtained from the execution clock table and added to the total execution clock counter (17). When a cache miss is determined, a page hit / miss at the time of memory access is determined using a probability function from a page hit rate given in advance. The probability function is realized by the same principle as that of the cache hit / miss determination.

【0013】ページヒット/ミスの判定後、実行クロッ
クテーブルよりページヒット/ミスに応じたメモリアク
セスに要するクロック数を求め、総実行クロック数カウ
ンタに加算する(19,20)。以上の処理を、評価対
象プログラムの実行する命令すべてに対して実行する。
After the page hit / miss determination, the number of clocks required for memory access according to the page hit / miss is obtained from the execution clock table, and added to the total execution clock counter (19, 20). The above processing is executed for all the instructions executed by the evaluation target program.

【0014】本実施例は、キャッシュメモリ、メインメ
モリシステムの動作評価の際、確率関数を用いることに
よりメモリシステムの機能評価を簡略化し、高速な性能
評価を実現することができる。また、キャッシュヒット
率、ページヒット率をパラメータとして評価対象のハー
ドウェア、ソフトウエアの評価を可能とすることができ
る。
In this embodiment, when evaluating the operation of the cache memory and the main memory system, the function evaluation of the memory system can be simplified by using a probability function, and high-speed performance evaluation can be realized. Further, it is possible to evaluate hardware and software to be evaluated using the cache hit ratio and the page hit ratio as parameters.

【0015】なお、評価対象の計算機のキャッシュメモ
リサイズ、メモリサイズ、ページサイズ等のハードウェ
ア・アーキテクチャを変更した場合には、キャッシュヒ
ット率、ページヒット率のパラメータを変更することに
より対応する。
When the hardware architecture such as the cache memory size, the memory size, and the page size of the computer to be evaluated is changed, it is dealt with by changing the parameters of the cache hit ratio and the page hit ratio.

【0016】[0016]

【発明の効果】以上説明したように、本発明の計算機シ
ステムの性能評価方法は、キャッシュヒット/ミス、ペ
ージヒット/ミスを確率関数により判定するのでメモリ
アクセス時の参照アドレスの厳密な動作解析が不要とな
り、高速なシミュレーションを実現することができ、ま
た、キャッシュヒット率、ページヒット率をパラメータ
としてプログラム実行時の総クロック数を求めるにより
評価対象のハードウェア、ソフトウエアの評価を行うこ
とが可能になるという効果を有する。
As described above, in the performance evaluation method of the computer system according to the present invention, a cache hit / miss and a page hit / miss are determined by a probability function. This eliminates the need for high-speed simulation, and enables evaluation of the hardware and software to be evaluated by obtaining the total number of clocks during program execution using the cache hit ratio and page hit ratio as parameters. Has the effect of becoming

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の性能評価方法の一実施例を示すフロー
図である。
FIG. 1 is a flowchart showing one embodiment of a performance evaluation method of the present invention.

【符号の説明】[Explanation of symbols]

11〜20 処理ステップ 11-20 processing steps

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】評価対象のプログラムの命令を実行順番に
沿って取り出し、 前記命令のメモリアクセスの有無を判定し、 メモリアクセスを含まない場合は、CPUの各実行命令
を実行するのに必要なクロック数の情報を格納する実行
クロックテーブルから前記命令の実行クロック数を求め
て前記総実行クロック数カウンタに加算し、 前記命令がメモリアクセスを含む場合は、命令の参照ア
ドレスおよびキャッシュメモリアクセス時のキャッシュ
ヒット率パラメータからキャッシュヒット/ミスを確率
的に判定し、 キャッシュヒットの場合は、前記実行クロックテーブル
よりキャッシュアクセスに要するクロック数を求めて前
記総実行クロック数カウンタに加算し、 キャッシュミスの場合は、命令の参照アドレスおよびメ
モリアクセス時のページヒット率パラメータからページ
ヒット/ミスを確率的に判定し、 ページヒット/ミスに応じて前記実行クロックテーブル
よりメモリアクセスに要するクロック数を求めて前記総
実行クロック数カウンタに加算し、 前記評価対象プログラムを実行する総クロック数を求め
ることを特徴とする計算機システムの性能評価方法。
1. An instruction of a program to be evaluated is fetched in an execution order, and it is determined whether or not the instruction has a memory access. If the instruction does not include a memory access, it is necessary to execute each execution instruction of a CPU. The number of execution clocks of the instruction is obtained from an execution clock table storing information on the number of clocks, and added to the total execution clock counter. If the instruction includes a memory access, a reference address of the instruction and a cache memory access time A cache hit / miss is stochastically determined from the cache hit ratio parameter. In the case of a cache hit, the number of clocks required for cache access is obtained from the execution clock table and added to the total execution clock counter. Is the reference address of the instruction and the A page hit / miss is stochastically determined from the di-hit ratio parameter, the number of clocks required for memory access is obtained from the execution clock table in accordance with the page hit / miss, and added to the total execution clock counter; A method for evaluating the performance of a computer system, comprising: obtaining a total number of clocks for executing the program.
【請求項2】評価対象の計算機のキャッシュメモリサイ
ズ、メモリサイズ、ページサイズ等のハードウェア・ア
ーキテクチャを変更した場合には、前記キャッシュヒッ
ト率パラメータおよびページヒット率パラメータを変更
することを特徴とする請求項1記載の計算機システムの
性能評価方法。
2. A cache hit rate parameter and a page hit rate parameter are changed when a hardware architecture such as a cache memory size, a memory size, and a page size of a computer to be evaluated is changed. A method for evaluating the performance of a computer system according to claim 1.
【請求項3】CPUの各実行命令を実行するのに必要な
クロック数の情報を格納する実行クロックテーブルと、 キャッシュメモリアクセス時のキャッシュヒット率パラ
メータと、 メモリアクセス時のページヒット率パラメータと、 プログラムを実行する総クロック数を計算するための総
実行クロック数カウンタとを有し、 評価対象のプログラムの命令を実行順番に沿って取り出
して前記命令のメモリアクセスの有無を判定し、メモリ
アクセスを含まない場合は、前記実行クロックテーブル
から前記命令の実行クロック数を求めて前記総実行クロ
ック数カウンタに加算し、前記命令がメモリアクセスを
含む場合は、命令の参照アドレスおよび前記キャッシュ
ヒット率パラメータからキャッシュヒット/ミスを確率
的に判定し、キャッシュヒットの場合は、前記実行クロ
ックテーブルよりキャッシュアクセスに要するクロック
数を求めて前記総実行クロック数カウンタに加算し、キ
ャッシュミスの場合は、命令の参照アドレスおよび前記
ページヒット率パラメータからページヒット/ミスを確
率的に判定し、ページヒット/ミスに応じて前記実行ク
ロックテーブルよりメモリアクセスに要するクロック数
を求めて前記総実行クロック数カウンタに加算し、前記
評価対象プログラムの総実行クロック数を求めることを
特徴とする計算機システム。
3. An execution clock table for storing information on the number of clocks required to execute each execution instruction of a CPU, a cache hit rate parameter when accessing a cache memory, a page hit rate parameter when accessing a memory, A total execution clock counter for calculating the total number of clocks for executing the program, fetching the instructions of the program to be evaluated in the order of execution, determining the presence or absence of memory access of the instructions, and If not, the number of execution clocks of the instruction is obtained from the execution clock table and added to the total execution clock counter.If the instruction includes memory access, the reference address of the instruction and the cache hit ratio parameter are used. Cache hit / miss is determined stochastically, and cache hit In the case of a cache hit, the number of clocks required for cache access is obtained from the execution clock table and added to the total execution clock counter. In the case of a cache miss, a page hit / miss is obtained from the reference address of the instruction and the page hit rate parameter. Is determined stochastically, the number of clocks required for memory access is obtained from the execution clock table in accordance with a page hit / miss, and added to the total execution clock counter to obtain the total execution clock number of the evaluation target program. A computer system characterized by the following.
JP8286534A 1996-10-29 1996-10-29 Computer system performance evaluation method Expired - Fee Related JP2994280B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8286534A JP2994280B2 (en) 1996-10-29 1996-10-29 Computer system performance evaluation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8286534A JP2994280B2 (en) 1996-10-29 1996-10-29 Computer system performance evaluation method

Publications (2)

Publication Number Publication Date
JPH10133902A JPH10133902A (en) 1998-05-22
JP2994280B2 true JP2994280B2 (en) 1999-12-27

Family

ID=17705661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8286534A Expired - Fee Related JP2994280B2 (en) 1996-10-29 1996-10-29 Computer system performance evaluation method

Country Status (1)

Country Link
JP (1) JP2994280B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4144005B2 (en) 2003-11-17 2008-09-03 インターナショナル・ビジネス・マシーンズ・コーポレーション Hit rate estimation device, hit rate estimation method, hit rate estimation program, and recording medium
JP4788177B2 (en) * 2005-03-31 2011-10-05 日本電気株式会社 Information processing apparatus, arithmetic processing apparatus, memory access control method, and program

Also Published As

Publication number Publication date
JPH10133902A (en) 1998-05-22

Similar Documents

Publication Publication Date Title
JP5805675B2 (en) CPU support for garbage collection
Irazoqui et al. Systematic reverse engineering of cache slice selection in Intel processors
EP3674877B1 (en) Method for accessing extended memory, device, and system
US8725485B2 (en) Simulation method and simulation apparatus
US6266768B1 (en) System and method for permitting out-of-order execution of load instructions
CN114580344B (en) Test excitation generation method, verification system and related equipment
US8086438B2 (en) Method and system for instruction-set architecture simulation using just in time compilation
JP2000250808A (en) Method for operating processor for prefetching structure data
US20080208558A1 (en) System and method for simulating a multiprocessor system
JP2002324058A (en) Instruction for ordering of execution in pipeline processing
US8006041B2 (en) Prefetch processing apparatus, prefetch processing method, storage medium storing prefetch processing program
WO2020073641A1 (en) Data structure-oriented data prefetching method and device for graphics processing unit
JP2693678B2 (en) Data processing device
US20050108440A1 (en) Method and system for coalescing input output accesses to a virtual device
Liu et al. Intersection prediction for accelerated GPU ray tracing
JP2994280B2 (en) Computer system performance evaluation method
JP2007094986A (en) Simulation apparatus and simulation method
JP2663893B2 (en) Architecture simulator
JP2002334128A (en) Method for simulating power consumption of semiconductor integrated circuit
US10051087B2 (en) Dynamic cache-efficient event suppression for network function virtualization
CN111651379B (en) DAX equipment address conversion caching method and system
JPH06149669A (en) System and device for transferring cache data
JP2000250957A (en) Logic simulation device
JP2915680B2 (en) RISC processor
Wang et al. Using idle workstations to implement predictive prefetching

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081022

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091022

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091022

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101022

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111022

Year of fee payment: 12

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111022

Year of fee payment: 12

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111022

Year of fee payment: 12

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121022

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121022

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121022

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131022

Year of fee payment: 14

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees