JPH02250133A - Information processor - Google Patents

Information processor

Info

Publication number
JPH02250133A
JPH02250133A JP1071478A JP7147889A JPH02250133A JP H02250133 A JPH02250133 A JP H02250133A JP 1071478 A JP1071478 A JP 1071478A JP 7147889 A JP7147889 A JP 7147889A JP H02250133 A JPH02250133 A JP H02250133A
Authority
JP
Japan
Prior art keywords
bank
time
competition
processor
performance
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.)
Granted
Application number
JP1071478A
Other languages
Japanese (ja)
Other versions
JPH0820999B2 (en
Inventor
Takeshi Nishikawa
西川 岳
Yoko Isobe
洋子 磯部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
NEC Computertechno Ltd
Original Assignee
NEC Corp
NEC Computertechno Ltd
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 NEC Corp, NEC Computertechno Ltd filed Critical NEC Corp
Priority to JP1071478A priority Critical patent/JPH0820999B2/en
Publication of JPH02250133A publication Critical patent/JPH02250133A/en
Publication of JPH0820999B2 publication Critical patent/JPH0820999B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To easily analyze the cause of deterioration of the performance by counting a competition time of a bank, and holding this counting value, when a competition is detected at the time of an access from a processor to plural banks. CONSTITUTION:A storage part 1 is constituted of plural banks 11-i, and a storage control part 2 arbitrates a competition of an access request to the storage part 1 from plural processors 3-j and a competition of an access to plural banks 11-i. In the storage control part 2, a bank competition detecting circuit 21 for detecting the generation of the competition of the bank 11-i is provided, and from this detecting circuit 21, a detection result signal 100 is outputted to a bank competition time counting circuit 4-j provided on each processor 3-j. The bank competition time counted at the time when the competition of the bank 11-i is detected at the time of an access to the storage part 1 from the processor 3-1 is held in a scalar register 41-1. In such a way, the influence of the bank competition time to an effective performance can be recognized, and the cause of deterioration of the performance can be analyzed easily.

Description

【発明の詳細な説明】 技術分野 本発明は情報処理装置に関し、特にコンピュタなどの情
報処理装置の性能測定に関する。
DETAILED DESCRIPTION OF THE INVENTION Technical Field The present invention relates to information processing apparatuses, and more particularly to performance measurement of information processing apparatuses such as computers.

従来技術 従来、この種の情報処理装置においては、プログラムの
実行時間を計測することにより実効性能が理論的性能よ
り低下したか否かを判定している。
BACKGROUND ART Conventionally, in this type of information processing apparatus, it has been determined whether or not the effective performance is lower than the theoretical performance by measuring the execution time of a program.

この実効性能の低下要因としては、メモリ競合(バンク
競合、ポート競合、パス競合など)やキャッシュミスヒ
ツト、あるいは分岐予測失敗などがあり、これらの発生
により装置の性能が変動する。
Factors that reduce this effective performance include memory conflicts (bank conflicts, port conflicts, path conflicts, etc.), cache misses, branch prediction failures, etc., and the performance of the device fluctuates due to the occurrence of these factors.

このような従来の情報処理装置では、プログラムの実行
時間を計測することにより実効性能が理論的性能より低
下したか否かを判定しているので、理論的性能に対して
実効性能が低下したということは認識できるが、その低
下要因が何であるのかがわからないため、その低下要因
かバンク競合であっても、そのバンク競合が性能に対し
てどのくらい影響するのかを認識することができないと
いう欠点がある。
In such conventional information processing devices, it is determined whether the effective performance has decreased below the theoretical performance by measuring the execution time of the program, so it is difficult to determine whether the effective performance has decreased relative to the theoretical performance. However, since we do not know what the cause of the decline is, we cannot recognize the impact of bank contention on performance, even if it is bank contention. .

発明の目的 本発明は上記のような従来のものの欠点を除去すべくな
されたもので、実効性能に対するバンク競合時間の影響
を認識することができ、性能低下の原因分析を容易に行
うことができる情報処理装置の提供を目的とする。
Purpose of the Invention The present invention has been made to eliminate the above-mentioned drawbacks of the conventional system, and allows the influence of bank contention time on effective performance to be recognized, making it easy to analyze the cause of performance decline. The purpose is to provide information processing equipment.

発明の構成 本発明による情報処理装置は、プロセッサによりアクセ
スされ、複数のバンクからなる記憶手段を含む情報処理
装置であって、前記バンクに対する前記プロセッサから
のアクセスにおいて競合を検出する検出手段と、前記検
出手段により競合が検出された該バンクの競合時間を計
数する計数手段と、前記計数手段の計数値を保持する保
持手段とを有することを特徴とする。
Composition of the Invention An information processing apparatus according to the present invention is an information processing apparatus that is accessed by a processor and includes storage means consisting of a plurality of banks; The present invention is characterized by comprising a counting means for counting the contention time of the bank in which a conflict has been detected by the detection means, and a holding means for holding the count value of the counting means.

実施例 次に、本発明の一実施例について図面を参照して説明す
る。
Embodiment Next, an embodiment of the present invention will be described with reference to the drawings.

第1図は本発明の一実施例の構成を示すブロック図であ
る。図において、記憶部1は複数のバンク(記憶単位)
11−i(i=1.2.・・・・・・、n)から構成さ
れ、記憶制御部2は複数のプロセッサ3−j(j=1.
2.・・・・・・、m)から記憶部]へのアクセス要求
の競合および複数のバンク11−1へのアクセスの競合
を調停する。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention. In the figure, the storage unit 1 has multiple banks (storage units).
11-i (i=1.2......,n), and the storage control unit 2 includes a plurality of processors 3-j (j=1.
2. .

記憶制御部2にはバンク11−1の競合の発生を検出す
るバンク競合検出回路2]が設けられており、このバン
ク競合検出回路2]から各プロセッサ3−jに設けられ
たバンク競合時間計数回路4−jには検出結果信号10
0が出力されている。
The storage control unit 2 is provided with a bank conflict detection circuit 2 which detects the occurrence of conflict in the bank 11-1, and from this bank conflict detection circuit 2 a bank conflict time counter provided in each processor 3-j is provided. The circuit 4-j has a detection result signal 10.
0 is output.

第2図は第1図のバンク競合時間計数回路4−1の構成
を示すブロック図である。図において、スカシレジスタ
41刊は複数のレジスタから構成され、ソフトウェアに
よってどのレジスタを使用するのかを指定することがで
きる。
FIG. 2 is a block diagram showing the configuration of the bank contention time counting circuit 4-1 of FIG. 1. In the figure, the 41st register is composed of a plurality of registers, and it is possible to specify which register to use by software.

バンク競合時間レジスタ43−1は計数されたバンク競
合時間が格納される。このバンク競合時間レジスタ43
−1にはスカラレジスタ41−1からの出力データまた
は加算器44刊からの出力データがセレクタ42−1に
より選択されて人力される。
The bank conflict time register 43-1 stores the counted bank conflict time. This bank contention time register 43
-1, the output data from the scalar register 41-1 or the output data from the adder 44 is selected by the selector 42-1 and input manually.

命令によってバンク競合時間レジスタ43−1に任意の
値を設定する場合には、セレクタ42刊は図示せぬ命令
制御部からの選択信号101によりスカラレジスタ4]
−1からの出力データを選択するように制御される。
When an arbitrary value is set in the bank conflict time register 43-1 by an instruction, the selector 42 is set to the scalar register 4 by a selection signal 101 from an instruction control section (not shown).
Controlled to select output data from -1.

加算器44−1ではバンク競合検出回路21からの検出
結果信号100が論理“′1”のときにバンク競合時間
レジスタ43−1からの値に+1を加算し、検出結果信
号100が論理“0”のときにバンク競合時間レジスタ
43−1からの値をそのまま通過させる。
The adder 44-1 adds +1 to the value from the bank conflict time register 43-1 when the detection result signal 100 from the bank conflict detection circuit 21 is logic "1", and the detection result signal 100 becomes logic "0". ”, the value from the bank conflict time register 43-1 is passed through as is.

尚、他のバンク競合時間計数回路4−2〜4−mもこの
バンク競合時間計数回路4−1と同様の構成となってお
り、その動作も同様である。
Note that the other bank contention time counting circuits 4-2 to 4-m have the same configuration as this bank contention time counting circuit 4-1, and their operations are also similar.

これら第1図および第2図を用いて本発明の一実施例の
動作について説明する。
The operation of an embodiment of the present invention will be explained using FIG. 1 and FIG. 2.

プロセッサ3−1から記憶部1へのアクセスにおいて、
記憶制御部2のバンク競合検出回路21でバンク11−
1の競合が検出されると、バンク競合検出回路21から
プロセッサ3−1に検出結果信号100が出力される。
In accessing the storage unit 1 from the processor 3-1,
The bank conflict detection circuit 21 of the storage control unit 2 selects the bank 11-
When one conflict is detected, a detection result signal 100 is output from the bank conflict detection circuit 21 to the processor 3-1.

プロセッサ3−1のバンク競合時間計数回路4−1では
バンク競合検出回路21からの検出結果信号100が人
力されると、この検出結果信号100が論理“1″とな
っている期間、加算器44−1によりバンク競合時間レ
ジスタ43−1の値に順次+1ずつ加算していく。
In the bank conflict time counting circuit 4-1 of the processor 3-1, when the detection result signal 100 from the bank conflict detection circuit 21 is manually input, the adder 44 outputs the detection result signal 100 during the period when the detection result signal 100 is at logic "1". -1, the value of the bank conflict time register 43-1 is sequentially added by +1.

このバンク競合時間レジスタ43刊には命令制御部から
の命令で指定されたスカラレジスタ4]−1の任意のレ
ジスタからのデータが初期値としてセットされている。
In this bank conflict time register 43, data from an arbitrary register of scalar registers 4]-1 specified by an instruction from the instruction control unit is set as an initial value.

よって、バンク競合時間レジスタ43−1にセットされ
た初期値には、バンク11−jの競合によりプロセッサ
3−1から記憶部1へのアクセスが待たされている時間
、すなわちバンク競合時間が加算器44−1で加算され
る。
Therefore, the initial value set in the bank conflict time register 43-1 includes the time during which access from the processor 3-1 to the storage unit 1 is waited due to the conflict in the bank 11-j, that is, the bank conflict time. It is added at 44-1.

バンク競合時間レジスタ43刊の値(初期値子バンク競
合時間)を命令によって読出す場合には、バンク競合時
間レジスタ43−1の値を命令で指定されたスカラレジ
スタ41−1のレジスタに読出しておき、該レジスタに
読出された値と初期値とによりソフトウェアでバンク競
合時間を認識することができる。
When reading the value of bank conflict time register 43 (initial value child bank conflict time) by an instruction, read the value of bank conflict time register 43-1 to the scalar register 41-1 specified by the instruction. Then, the bank conflict time can be recognized by software based on the value read to the register and the initial value.

ここで、本発明の一実施例のスカラレジスタ41−1は
ソフトウェアビジプルのレジスタ、つまりプログラムに
よって読出し書込み可能なレジスタである。したがって
、このスカラレジスタ41−1が他のソフトウェアビジ
プルのリソース(例えばメモリなと)であってもその効
果は同様である。
Here, the scalar register 41-1 in one embodiment of the present invention is a software visible register, that is, a register that can be read and written by a program. Therefore, even if this scalar register 41-1 is another software visible resource (for example, a memory), the effect is the same.

従来の性能測定方法によりプログラムの実効性能が理論
的性能よりも低下していることが検出された場合、バン
ク競合時間レジスタ43刊の値を読出す命令をそのプロ
グラムの開始時および終了時に実行し、これらの命令に
より読出された値の差分[(プログラム終了時のバンク
競合時間レジスタ43−1の値)−(プログラム開始時
のバンク競合時間レジスタ43−1の値)]を求めるこ
とにより、そのプログラム全体のバンク競合時間をソフ
トウェアで認識することができる。
If it is detected by the conventional performance measurement method that the effective performance of a program is lower than the theoretical performance, an instruction to read the value of bank contention time register 43 is executed at the start and end of the program. , by calculating the difference [(value of bank conflict time register 43-1 at the end of the program) - (value of bank conflict time register 43-1 at the start of the program)] between the values read by these instructions. The bank conflict time of the entire program can be recognized by software.

これにより、実効性能が理論的性能よりも低下している
プログラムにおいて、メモリアクセスにおけるバンク競
合が性能に及はす影響を測定することができるため、実
効性能の低下がメモリアクセス時のバンク競合によるも
のか否かを調べることができる。
This makes it possible to measure the impact of bank contention during memory access on performance in programs whose effective performance is lower than the theoretical performance, so it is possible to determine whether the decline in effective performance is due to bank contention during memory access. You can check whether it is a thing or not.

また、実効性能の低下がメモリアクセス時のバンク競合
によるものであると判明した場合、バンク競合時間レジ
スタ43−1の値を読出す命令をそのプログラムの任意
の箇所に挿入し、この命令により読出された値の差分を
求めることによってそのプログラムの各区間におけるバ
ンク競合の影響を測定する。
In addition, if it is determined that the decrease in effective performance is due to bank contention during memory access, an instruction to read the value of the bank contention time register 43-1 is inserted anywhere in the program, and this instruction reads out the value of bank contention time register 43-1. The influence of bank contention in each section of the program is measured by calculating the difference between the values.

この測定結果により、そのプログラムにおいてどのメモ
リアクセスでバンク競合が発生しているのかが判明する
ので、該メモリアクセスにおけるバンク競合を回避する
ようにすることによってそのプログラムの実効性能の向
上をはかることができる。
This measurement result reveals which memory access in the program causes bank conflict, so it is possible to improve the effective performance of the program by avoiding bank conflict in the memory access. can.

このように、プロセッサ3刊から記憶部]へのアクセス
においてバンク11−1の競合が検出されたときに副数
されたバンク競合時間をスカラレジスタ41−1に保持
するようにすることによって、このバンク競合時間をソ
フトウェアで認識することができる。よって、プロセッ
サ3刊から記憶部1へのアクセスにおけるバンク11−
1の競合による実効性能の低下の原因分析が容易となり
、この分析により判明した原因を回避することによって
プログラムの実効性能を最大限に発揮することができる
In this way, when a conflict in bank 11-1 is detected in an access from the processor 3 to the storage section, the submultiple bank conflict time is held in the scalar register 41-1. Bank conflict time can be recognized by software. Therefore, when accessing memory unit 1 from processor 3, bank 11-
It becomes easy to analyze the cause of the decline in effective performance due to contention in item 1, and by avoiding the cause identified by this analysis, the effective performance of the program can be maximized.

尚、本発明の一実施例では各プロセッサ3−jにバンク
競合時間目数回路4−jを設けているが、このバンク競
合時間計数回路4−jは各プロセッサ3jに対応してい
ればどこに設けてもよく、これに限定されない。
In one embodiment of the present invention, each processor 3-j is provided with a bank contention time count circuit 4-j, but this bank contention time counting circuit 4-j can be located anywhere if it corresponds to each processor 3j. However, the present invention is not limited to this.

また、バンク競合時間レジスタ43−1に初期値をセッ
トしてオバーフローしないようにしているが、バンク競
合時間レジスタ43−1をリセットするようにしても、
同様の効果が得られるのは明白である。
Also, although an initial value is set in the bank conflict time register 43-1 to prevent overflow, even if the bank conflict time register 43-1 is reset,
It is clear that similar effects can be obtained.

発明の詳細 な説明したように本発明は、複数のバンクに対するプロ
セッサからのアクセスにおいて競合が検出されたとき、
該バンクの競合時間を計数し、この計数値を保持するよ
うにすることによって、実効性能に対するバンク競合時
間の影響を認識することかでき、性能低下の原因分析を
容易に行うことができるという効果がある。
DETAILED DESCRIPTION OF THE INVENTION According to the present invention, when a conflict is detected in access from a processor to a plurality of banks,
By counting the contention time of the bank and retaining this counted value, the effect of the bank contention time on effective performance can be recognized, and the cause of performance decline can be easily analyzed. There is.

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

第1図は本発明の一実施例の構成を示すブロック図、第
2図は第1図のバンク競合時間目数回路の構成を示すブ
ロック図である。 主要部分の符号の説明 1・・・・・・記憶部 2・・・・・・記憶制御部 3−1〜3−m・・・・・・プロセッサ4−1〜4−m
・・・・・バンク競合時間目数回路11−1〜11−n
・・・・・バンク 21・・・・・・バンク競合検出回路 41−1・・・・・・スカラレジスタ 43−1・・・・・・バンク競合時間レジスタ44−1
・・・・・・加算器
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention, and FIG. 2 is a block diagram showing the configuration of the bank contention time index circuit of FIG. 1. Explanation of symbols of main parts 1...Storage unit 2...Storage control unit 3-1 to 3-m...Processor 4-1 to 4-m
...Bank contention time number circuits 11-1 to 11-n
... Bank 21 ... Bank conflict detection circuit 41-1 ... Scalar register 43-1 ... Bank conflict time register 44-1
・・・・・・Adder

Claims (1)

【特許請求の範囲】[Claims] (1)プロセッサによりアクセスされ、複数のバンクか
らなる記憶手段を含む情報処理装置であって、前記バン
クに対する前記プロセッサからのアクセスにおいて競合
を検出する検出手段と、前記検出手段により競合が検出
された該バンクの競合時間を計数する計数手段と、前記
計数手段の計数値を保持する保持手段とを有することを
特徴とする情報処理装置。
(1) An information processing device that is accessed by a processor and includes a storage device that is made up of a plurality of banks, the information processing device including a detection device that detects a conflict in an access from the processor to the bank, and a conflict that is detected by the detection device. An information processing apparatus comprising: a counting means for counting the contention time of the bank; and a holding means for holding the count value of the counting means.
JP1071478A 1989-03-23 1989-03-23 Information processing device Expired - Lifetime JPH0820999B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1071478A JPH0820999B2 (en) 1989-03-23 1989-03-23 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1071478A JPH0820999B2 (en) 1989-03-23 1989-03-23 Information processing device

Publications (2)

Publication Number Publication Date
JPH02250133A true JPH02250133A (en) 1990-10-05
JPH0820999B2 JPH0820999B2 (en) 1996-03-04

Family

ID=13461782

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1071478A Expired - Lifetime JPH0820999B2 (en) 1989-03-23 1989-03-23 Information processing device

Country Status (1)

Country Link
JP (1) JPH0820999B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198165A (en) * 2009-02-24 2010-09-09 Nec Corp Start control method, information processor and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198165A (en) * 2009-02-24 2010-09-09 Nec Corp Start control method, information processor and program

Also Published As

Publication number Publication date
JPH0820999B2 (en) 1996-03-04

Similar Documents

Publication Publication Date Title
KR100292642B1 (en) Systems and Methods for Interfering Code Instrumentation
US4601008A (en) Data processing system
US7895382B2 (en) Method and apparatus for qualifying collection of performance monitoring events by types of interrupt when interrupt occurs
US6539500B1 (en) System and method for tracing
US5727167A (en) Thresholding support in performance monitoring
US20050154812A1 (en) Method and apparatus for providing pre and post handlers for recording events
US7398518B2 (en) Method and apparatus for measuring thread wait time
JPH10254700A (en) Processor performance counter for sampling execution frequency of individual instructions
RU2137182C1 (en) Execution of data processing instruction
US20140156978A1 (en) Detecting and Filtering Biased Branches in Global Branch History
US6339818B1 (en) Method and system for dynamically locating frequently accessed memory regions or locations
US8612952B2 (en) Performance optimization based on data accesses during critical sections
EP0530816A2 (en) Microprocessor with cache memory and trace analyzer therefor
US7779230B2 (en) Data flow execution of methods in sequential programs
US20040128654A1 (en) Method and apparatus for measuring variation in thread wait time
US7584464B2 (en) Software processing method and software processing system
JPH02250133A (en) Information processor
JP5505192B2 (en) Competitive test equipment
CA1264200A (en) System memory for a reduction processor evaluating programs stored as binary directed graphs employing variable-free applicative language codes
JP2018206180A (en) Cycle value measuring program in multicore processor, cycle value measurement method, information processing device having multicore processor, and information processing system having multicore processor
JP2834194B2 (en) Hardware monitor
EP1100017A1 (en) Memory access monitoring and debugging device
CN114253821B (en) Method and device for analyzing GPU performance and computer storage medium
JPH10187484A (en) Simulator
KR100599944B1 (en) Method for determining the optimal access strategy