JPS6226732B2 - - Google Patents
Info
- Publication number
- JPS6226732B2 JPS6226732B2 JP57113317A JP11331782A JPS6226732B2 JP S6226732 B2 JPS6226732 B2 JP S6226732B2 JP 57113317 A JP57113317 A JP 57113317A JP 11331782 A JP11331782 A JP 11331782A JP S6226732 B2 JPS6226732 B2 JP S6226732B2
- Authority
- JP
- Japan
- Prior art keywords
- performance measurement
- measurement
- instruction
- timer
- interrupt
- 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
Links
- 238000005259 measurement Methods 0.000 claims description 110
- 238000012545 processing Methods 0.000 claims description 77
- 238000005070 sampling Methods 0.000 claims description 10
- 238000000034 method Methods 0.000 description 49
- 238000007796 conventional method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/24—Marginal checking or other specified testing methods not covered by G06F11/26, e.g. race tests
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/348—Circuit details, i.e. tracer hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
【発明の詳細な説明】
(1) 発明の技術分野
本発明はフアームウエアによる性能測定システ
ム、特にフアームウエア機構を有するデータ処理
装置のシステムにおいて、処理装置内のタイマを
用いてフアームウエアによる性能測定機構を実現
したフアームウエアによる性能測定システムに関
するものである。
ム、特にフアームウエア機構を有するデータ処理
装置のシステムにおいて、処理装置内のタイマを
用いてフアームウエアによる性能測定機構を実現
したフアームウエアによる性能測定システムに関
するものである。
(2) 従来技術と問題点
主記憶上の命令をフエツチして実行するデータ
処理装置の性能測定は、例えば次期システムの開
発やソフトウエアの設計に重要な指針を与える。
処理装置の性能測定は、例えば次期システムの開
発やソフトウエアの設計に重要な指針を与える。
第1図は従来方式の例を示す。従来のデータ処
理装置の性能測定機構は、例えば第1図図示の如
く、ハードウエアの論理回路によつて構成されて
いた。処理装置1には、例えば命令出現頻度測定
等といつた性能測定項目毎に計数回路4−1ない
し4−nが設けられ、制御回路2の制御によつ
て、選択回路3が性能測定を行うポイントの信号
を選択して、測定項目毎のトリガ信号により各計
数回路4−1ないし4−nを動作させる。このよ
うな従来の方式によれば、性能測定専用のハード
ウエアを大量に必要とし、また性能測定項目が固
定化され、予め組込まれた測定項目以外の項目に
ついての性能の測定はできないという問題があつ
た。しかし、性能測定をソフトウエア的に処理す
るとすれば、ソフトウエアによつて実現される性
能測定用のプログラム自体の実行が、測定結果に
影響を及ぼさないように配慮しなければならない
という問題が生じる。
理装置の性能測定機構は、例えば第1図図示の如
く、ハードウエアの論理回路によつて構成されて
いた。処理装置1には、例えば命令出現頻度測定
等といつた性能測定項目毎に計数回路4−1ない
し4−nが設けられ、制御回路2の制御によつ
て、選択回路3が性能測定を行うポイントの信号
を選択して、測定項目毎のトリガ信号により各計
数回路4−1ないし4−nを動作させる。このよ
うな従来の方式によれば、性能測定専用のハード
ウエアを大量に必要とし、また性能測定項目が固
定化され、予め組込まれた測定項目以外の項目に
ついての性能の測定はできないという問題があつ
た。しかし、性能測定をソフトウエア的に処理す
るとすれば、ソフトウエアによつて実現される性
能測定用のプログラム自体の実行が、測定結果に
影響を及ぼさないように配慮しなければならない
という問題が生じる。
(3) 発明の目的と構成
本発明は上記問題点の解決を図り、性能測定専
用のハードウエアを持たずに、任意の性能測定項
目が設定できるような柔軟性のある性能測定機構
を提供することを目的としている。そのため、本
発明は性能測定のトリガに処理装置内タイマの設
定値によるタイマの外部割込みを用いて、フアー
ムウエアに制御を移し、フアームウエアが測定項
目毎の処理を行い、結果を例えば主記憶装置上に
集計するようにしたものである。すなわち、本発
明のフアームウエアによる性能測定システムは、
少なくともプログラム割込み機構、タイマによる
外部割込み機構およびフアームウエア機構を有す
るデータ処理装置において、プログラム割込みを
生じさせる性能測定設定用命令を設けるととも
に、性能測定項目に対応して測定情報が格納され
るログエリアと、性能測定項目情報および状態制
御情報が設定される測定制御テーブルとを設け、
上記性能測定設定用命令によるプログラム割込み
によつて起動され上記測定制御テーブルへの情報
設定および性能測定のサンプリング間隔を決定す
るタイマ設定を行うフアームウエアによる性能測
定設定部と、該性能測定設定部が設定したタイマ
による外部割込みによつて起動され上記測定制御
テーブルの内容にもとづいて上記ログエリアに測
定情報を収集するフアームウエアによる性能測定
処理部とをそなえたことを特徴としている。以下
図面を参照しつつ実施例にもとづいて説明する。
用のハードウエアを持たずに、任意の性能測定項
目が設定できるような柔軟性のある性能測定機構
を提供することを目的としている。そのため、本
発明は性能測定のトリガに処理装置内タイマの設
定値によるタイマの外部割込みを用いて、フアー
ムウエアに制御を移し、フアームウエアが測定項
目毎の処理を行い、結果を例えば主記憶装置上に
集計するようにしたものである。すなわち、本発
明のフアームウエアによる性能測定システムは、
少なくともプログラム割込み機構、タイマによる
外部割込み機構およびフアームウエア機構を有す
るデータ処理装置において、プログラム割込みを
生じさせる性能測定設定用命令を設けるととも
に、性能測定項目に対応して測定情報が格納され
るログエリアと、性能測定項目情報および状態制
御情報が設定される測定制御テーブルとを設け、
上記性能測定設定用命令によるプログラム割込み
によつて起動され上記測定制御テーブルへの情報
設定および性能測定のサンプリング間隔を決定す
るタイマ設定を行うフアームウエアによる性能測
定設定部と、該性能測定設定部が設定したタイマ
による外部割込みによつて起動され上記測定制御
テーブルの内容にもとづいて上記ログエリアに測
定情報を収集するフアームウエアによる性能測定
処理部とをそなえたことを特徴としている。以下
図面を参照しつつ実施例にもとづいて説明する。
(4) 発明の実施例
第2図は本発明の一実施例構成、第3図は本発
明に係るログエリアの例、第4図は測定制御テー
ブルの例、第5図ないし第9図は性能測定設定部
の処理説明図、第10図および第11図は性能測
定処理部の処理説明図を示す。
明に係るログエリアの例、第4図は測定制御テー
ブルの例、第5図ないし第9図は性能測定設定部
の処理説明図、第10図および第11図は性能測
定処理部の処理説明図を示す。
図中、1は処理装置、5は性能測定指示部、6
−1ないし6−4は性能測定設定用命令であつ
て、特に6−1はモード・セツト命令、6−2は
スタート命令、6−3はストツプ命令、6−4は
モード・リセツト命令を表わす。また、7はプロ
グラム状態語(PSW)、8はプログラム割込み処
理部、9は性能測定設定部、10は外部割込み処
理部、11は性能測定処理部、12はタイマ、1
3はログエリア、14は測定制御テーブル、15
は状態制御情報設定域、16は項目情報設定域を
表わす。
−1ないし6−4は性能測定設定用命令であつ
て、特に6−1はモード・セツト命令、6−2は
スタート命令、6−3はストツプ命令、6−4は
モード・リセツト命令を表わす。また、7はプロ
グラム状態語(PSW)、8はプログラム割込み処
理部、9は性能測定設定部、10は外部割込み処
理部、11は性能測定処理部、12はタイマ、1
3はログエリア、14は測定制御テーブル、15
は状態制御情報設定域、16は項目情報設定域を
表わす。
処理装置1は主記憶上の命令をフエツチして実
行し、データ処理を行う装置である。性能測定指
示部5は処理装置1の性能測定を指示する機械語
命令群からなるものであつて、特に本発明で設け
られた性能測定設定用命令6−1ないし6−4を
発行することによつて、後述するフアームウエア
を動作させる。性能測定設定用命令としては、例
えば性能測定項目等を選択して設定するモード・
セツト命令6−1、性能測定の開始を指示するス
タート命令6−2、性能測定の終了を指示するス
トツプ命令6−3、選択した性能測定項目等の設
定を解除するモード・リセツト命令6−4が設け
られる。一般に機械語命令は、命令の種類を示す
命令コード部と、オペレーシヨンの対象を示すオ
ペランド部とからなるが、上記性能測定設定用命
令6−1〜6−4には未定義の命令コードを割当
てる。従つて、これらの命令6−1〜6−4を処
理装置1が実行すると、インバリツト命令検出で
オペレーシヨン例外によるプログラム割込みを発
生させることになる。
行し、データ処理を行う装置である。性能測定指
示部5は処理装置1の性能測定を指示する機械語
命令群からなるものであつて、特に本発明で設け
られた性能測定設定用命令6−1ないし6−4を
発行することによつて、後述するフアームウエア
を動作させる。性能測定設定用命令としては、例
えば性能測定項目等を選択して設定するモード・
セツト命令6−1、性能測定の開始を指示するス
タート命令6−2、性能測定の終了を指示するス
トツプ命令6−3、選択した性能測定項目等の設
定を解除するモード・リセツト命令6−4が設け
られる。一般に機械語命令は、命令の種類を示す
命令コード部と、オペレーシヨンの対象を示すオ
ペランド部とからなるが、上記性能測定設定用命
令6−1〜6−4には未定義の命令コードを割当
てる。従つて、これらの命令6−1〜6−4を処
理装置1が実行すると、インバリツト命令検出で
オペレーシヨン例外によるプログラム割込みを発
生させることになる。
プログラム割込み処理部8は、命令の実行によ
つて検出された各種例外条件によるプログラム割
込みが発生したときに、PSW7の内容が退避さ
れ、更新されることによつて制御が移行し、各種
プログラム割込みに対応した処理を行うものであ
る。プログラム割込みが性能測定設定用命令6−
1〜6−4の実行によつて生じた場合には、フア
ームウエアによつて構成された性能測定設定部9
を起動する。
つて検出された各種例外条件によるプログラム割
込みが発生したときに、PSW7の内容が退避さ
れ、更新されることによつて制御が移行し、各種
プログラム割込みに対応した処理を行うものであ
る。プログラム割込みが性能測定設定用命令6−
1〜6−4の実行によつて生じた場合には、フア
ームウエアによつて構成された性能測定設定部9
を起動する。
性能測定設定部9は、測定制御テーブル14に
モード・セツト命令6−1で指定された制御情報
を設定し、スタート命令6−2を契機にタイマ1
2をセツトし測定開始の制御等の処理を行う。詳
しい処理については後述する。タイマ12は、一
般のCPUタイマと同等の働きを有するものであ
つて、前もつて設定された時間が経過したとき
に、外部割込みを生じさせるものである。性能測
定用に新たに設けてもよいが、例えば仮想計算機
のデイスパツチに用いられるいわゆるRVMタイ
マ等、既存のタイマを利用してもよい。この実施
例ではRVMタイマを用いた場合について説明す
る。
モード・セツト命令6−1で指定された制御情報
を設定し、スタート命令6−2を契機にタイマ1
2をセツトし測定開始の制御等の処理を行う。詳
しい処理については後述する。タイマ12は、一
般のCPUタイマと同等の働きを有するものであ
つて、前もつて設定された時間が経過したとき
に、外部割込みを生じさせるものである。性能測
定用に新たに設けてもよいが、例えば仮想計算機
のデイスパツチに用いられるいわゆるRVMタイ
マ等、既存のタイマを利用してもよい。この実施
例ではRVMタイマを用いた場合について説明す
る。
外部割込みが発生すると、外部割込み処理部1
0が起動される。外部割込み処理部10は、割込
みコードにより、割込みがタイマ12によるもの
であることを検知した場合に、性能測定処理部1
1を起動する。性能測定処理部11は、フアーム
ウエアで構成され、後述する如く、測定制御テー
ブル14に設定された内容にもとづいて、性能測
定情報を収集し、ログエリア13に格納する処理
を行う。タイマ12による外部割込みは、モー
ド・セツト命令6−1で任意に指定した周期で発
生するようにされ、従つて性能測定処理部11
は、その外部割込みをトリガとして、ランダムに
測定情報をサンプリングすることとなる。
0が起動される。外部割込み処理部10は、割込
みコードにより、割込みがタイマ12によるもの
であることを検知した場合に、性能測定処理部1
1を起動する。性能測定処理部11は、フアーム
ウエアで構成され、後述する如く、測定制御テー
ブル14に設定された内容にもとづいて、性能測
定情報を収集し、ログエリア13に格納する処理
を行う。タイマ12による外部割込みは、モー
ド・セツト命令6−1で任意に指定した周期で発
生するようにされ、従つて性能測定処理部11
は、その外部割込みをトリガとして、ランダムに
測定情報をサンプリングすることとなる。
性能測定項目として、例えば各命令毎の出現頻
度測定がある。命令出現頻度測定用のログエリア
13は、例えば第3図図示の如く構成され、主記
憶装置内に確保される。処理装置1のスーパーバ
イザ(SUP)モードおよび問題プログラム(P.
P)モードのそれぞれについて、各命令コード毎
に4バイトのエリアが確保され、ログエリア13
内の相対番地は、図示の如く、PSW7の第15ビ
ツト目から得られる状態モードと、命令副コード
を含む16ビツトの命令コードとによつて決定され
る。従つて、性能測定処理部11はダイレクトに
チエツクした命令の出現頻度をカウント・アツプ
することができる。
度測定がある。命令出現頻度測定用のログエリア
13は、例えば第3図図示の如く構成され、主記
憶装置内に確保される。処理装置1のスーパーバ
イザ(SUP)モードおよび問題プログラム(P.
P)モードのそれぞれについて、各命令コード毎
に4バイトのエリアが確保され、ログエリア13
内の相対番地は、図示の如く、PSW7の第15ビ
ツト目から得られる状態モードと、命令副コード
を含む16ビツトの命令コードとによつて決定され
る。従つて、性能測定処理部11はダイレクトに
チエツクした命令の出現頻度をカウント・アツプ
することができる。
測定制御テーブル14は、例えば第4図図示の
如く構成される。測定制御テーブル14の状態制
御情報設定域15には、モード・セツト命令6−
1によつて“1”にされ、モード・リセツト命令
6−4によつて“0”にされる状態フラグ15−
1や、スタート命令6−2によつて“1”にさ
れ、ストツプ命令6−3によつて“0”に戻され
る状態フラグ15−2が設けられる。また、サン
プリング間隔制御用ビツト15−3が設けられ
る。本実施例においては、該ビツト15−3のオ
フ/オンによつて3.3msまたは422.4msのサン
プリング周期が選択できるが、指示ビツト数を多
くして、もつと多くのサンプリング周期を任意に
選択できるようにすることが可能であることは言
うまでもない。項目情報設定域16には、例えば
収集すべき測定項目を示す項目IDやその収集範
囲を示すアドレスが、各項目毎に設定される。
FLAG16−1は収集範囲を示す論理アドレスが有
効か無効かを示すものである。
如く構成される。測定制御テーブル14の状態制
御情報設定域15には、モード・セツト命令6−
1によつて“1”にされ、モード・リセツト命令
6−4によつて“0”にされる状態フラグ15−
1や、スタート命令6−2によつて“1”にさ
れ、ストツプ命令6−3によつて“0”に戻され
る状態フラグ15−2が設けられる。また、サン
プリング間隔制御用ビツト15−3が設けられ
る。本実施例においては、該ビツト15−3のオ
フ/オンによつて3.3msまたは422.4msのサン
プリング周期が選択できるが、指示ビツト数を多
くして、もつと多くのサンプリング周期を任意に
選択できるようにすることが可能であることは言
うまでもない。項目情報設定域16には、例えば
収集すべき測定項目を示す項目IDやその収集範
囲を示すアドレスが、各項目毎に設定される。
FLAG16−1は収集範囲を示す論理アドレスが有
効か無効かを示すものである。
次に、第5図ないし第9図を参照して、性能測
定設定部9の処理について説明する。
定設定部9の処理について説明する。
プログラム割込みが発生すると、プログラム割
込み処理部8が起動され、プログラム割込み処理
部8は、まず第5図図示処理20によつて、プロ
グラム割込みコードがオペレーシヨン以外
(X′01′)であるかどうかを判定する。オペレーシ
ヨン例外でない場合には、従来の一般のプログラ
ム割込み処理を行う。オペレーシヨン例外である
場合には、処理21によつて、プログラム割込み
の原因となつた命令コードをフエツチし、解析す
る。解析した結果、性能測定設定用命令6−1な
いし6−4であることが判別したならば、性能測
定設定部9を起動する。
込み処理部8が起動され、プログラム割込み処理
部8は、まず第5図図示処理20によつて、プロ
グラム割込みコードがオペレーシヨン以外
(X′01′)であるかどうかを判定する。オペレーシ
ヨン例外でない場合には、従来の一般のプログラ
ム割込み処理を行う。オペレーシヨン例外である
場合には、処理21によつて、プログラム割込み
の原因となつた命令コードをフエツチし、解析す
る。解析した結果、性能測定設定用命令6−1な
いし6−4であることが判別したならば、性能測
定設定部9を起動する。
性能測定設定部9は、命令コードによつて、そ
れぞれモード・セツト命令処理部22、スタート
命令処理部23、ストツプ命令処理部24、モー
ド・リセツト命令処理部25を呼び出し、各命令
6−1ないし6−4の処理を後述する如く実行し
て、処理26によつて、実行結果を示す条件コー
ド(CC)をセツトした後、割込み発生箇所に復
帰する。
れぞれモード・セツト命令処理部22、スタート
命令処理部23、ストツプ命令処理部24、モー
ド・リセツト命令処理部25を呼び出し、各命令
6−1ないし6−4の処理を後述する如く実行し
て、処理26によつて、実行結果を示す条件コー
ド(CC)をセツトした後、割込み発生箇所に復
帰する。
モード・セツト命令処理部22は、第6図図示
の如く処理する。まず、第6図図示処理30によ
つて、第4図に図示した測定制御テーブル14の
状態フラグ15−1を参照し、現在ENABLE状
態かDISABLE状態かを調べる。ENABLE状態で
あるときには、処理36によつてCCを「1」に
して呼び出し元へ戻る。DISABLE状態であると
きには、処理31によつて状態フラグ15−1を
オンにし、ENABLE状態にする。次に、処理3
2によつて、ログエリア13を初期設定し、処理
33によつて、モード・セツト命令6−1のオペ
ランドで指定された情報にもとづいて、測定制御
テーブル14に項目情報を設定する。また、処理
34によつて、サンプリング間隔制御用ビツト1
5−3を“0”または“1”に設定し、最後に処
理35によつて、CCを正常終了を示す「0」に
して、呼び出し元へ戻る。
の如く処理する。まず、第6図図示処理30によ
つて、第4図に図示した測定制御テーブル14の
状態フラグ15−1を参照し、現在ENABLE状
態かDISABLE状態かを調べる。ENABLE状態で
あるときには、処理36によつてCCを「1」に
して呼び出し元へ戻る。DISABLE状態であると
きには、処理31によつて状態フラグ15−1を
オンにし、ENABLE状態にする。次に、処理3
2によつて、ログエリア13を初期設定し、処理
33によつて、モード・セツト命令6−1のオペ
ランドで指定された情報にもとづいて、測定制御
テーブル14に項目情報を設定する。また、処理
34によつて、サンプリング間隔制御用ビツト1
5−3を“0”または“1”に設定し、最後に処
理35によつて、CCを正常終了を示す「0」に
して、呼び出し元へ戻る。
スタート命令処理部23は、第7図図示の如く
処理する。まず、第7図図示処理40および処理
41によつて、測定制御テーブル14の状態フラ
グ15−2および15−1を調べる。もし、既に
START状態であれば、処理49によつてCCを
「1」にし、また現在DISABLE状態になつていれ
ば、処理48によりCCを「2」にして、呼び出
し元へ戻る。STOP状態であり、ENABLE状態で
あれば、処理42に制御を移し、状態フラグ15
−2をオンにして、START状態にする。次に、
サンプリング間隔制御用ビツト15−3を参照
し、オンであれば、処理44でRVMタイマ12
に422.4msを設定し、オフであれば処理45で
RVMタイマ12に3.3msを設定する。そして、
処理46によつて、タイマ12についての外部割
込みマスクをオンにし、外部割込み禁止を解除す
る。こうすれば、後に3.3msまたは422.4ms経
過したときに外部割込みが発生することとなる。
外部割込みマスクをオンしたならば、処理47に
よつてCCを「0」にし呼び出し元へ戻る。
処理する。まず、第7図図示処理40および処理
41によつて、測定制御テーブル14の状態フラ
グ15−2および15−1を調べる。もし、既に
START状態であれば、処理49によつてCCを
「1」にし、また現在DISABLE状態になつていれ
ば、処理48によりCCを「2」にして、呼び出
し元へ戻る。STOP状態であり、ENABLE状態で
あれば、処理42に制御を移し、状態フラグ15
−2をオンにして、START状態にする。次に、
サンプリング間隔制御用ビツト15−3を参照
し、オンであれば、処理44でRVMタイマ12
に422.4msを設定し、オフであれば処理45で
RVMタイマ12に3.3msを設定する。そして、
処理46によつて、タイマ12についての外部割
込みマスクをオンにし、外部割込み禁止を解除す
る。こうすれば、後に3.3msまたは422.4ms経
過したときに外部割込みが発生することとなる。
外部割込みマスクをオンしたならば、処理47に
よつてCCを「0」にし呼び出し元へ戻る。
ストツプ命令処理部24は、第8図図示の如く
処理する。まず、処理50によつて、現在の
START状態であるかどうかを判定する。
START状態でないときには、処理54によつ
て、CCを「2」にして戻る。START状態であ
れば、処理51によつてSTOP状態に変更し、処
理52によつて、タイマ12による外部割込みマ
スクをオンにして割込みを禁止する。これによつ
て、サンプリングは中止されることになる。処理
53によつて、CCを「0」にして、呼び出し元
へ戻る。
処理する。まず、処理50によつて、現在の
START状態であるかどうかを判定する。
START状態でないときには、処理54によつ
て、CCを「2」にして戻る。START状態であ
れば、処理51によつてSTOP状態に変更し、処
理52によつて、タイマ12による外部割込みマ
スクをオンにして割込みを禁止する。これによつ
て、サンプリングは中止されることになる。処理
53によつて、CCを「0」にして、呼び出し元
へ戻る。
モード・リセツト命令処理部25は、第9図図
示の如く処理する。まず処理60によつて、現在
START状態であるかどうかを調べる。START
状態であるときには、処理65によつて、CCを
「2」にして呼び出し元へ戻る。次に処理61に
よつて、DISABLE状態かどうかを調べる。
DISABLE状態であるときには、処理64によつ
てCCを「1」にする。ENABLE状態であるとき
には、処理62によつて、DISABLE状態に変更
し、処理63によつてCCを「0」にして、呼び
出し元へ戻る。
示の如く処理する。まず処理60によつて、現在
START状態であるかどうかを調べる。START
状態であるときには、処理65によつて、CCを
「2」にして呼び出し元へ戻る。次に処理61に
よつて、DISABLE状態かどうかを調べる。
DISABLE状態であるときには、処理64によつ
てCCを「1」にする。ENABLE状態であるとき
には、処理62によつて、DISABLE状態に変更
し、処理63によつてCCを「0」にして、呼び
出し元へ戻る。
次に、第10図および第11図を参照して、性
能測定処理部11の処理について説明する。
能測定処理部11の処理について説明する。
外部割込みが発生すると、外部割込み処理部1
0が起動される。外部割込み処理部10は、第1
0図図示処理70によつて、外部割込みコードが
X′1008′であるかどうか、すなわちRVMタイマ1
2による割込みであるかどうかを判定する。も
し、そうでない場合には、従来の一般の割込み処
理を行う。RVMタイマ12による割込みである
場合には、性能測定処理部11に制御を移す。
0が起動される。外部割込み処理部10は、第1
0図図示処理70によつて、外部割込みコードが
X′1008′であるかどうか、すなわちRVMタイマ1
2による割込みであるかどうかを判定する。も
し、そうでない場合には、従来の一般の割込み処
理を行う。RVMタイマ12による割込みである
場合には、性能測定処理部11に制御を移す。
性能測定処理部11は、処理71によつて、内
部フラグをオンにする。この内部フラグは外部割
込みが2重に発生した場合に、シーケンシヤルに
処理するための制御フラグである。次に、処理7
2によつて、ログエリア13のアドレスをフエツ
チし、また測定制御テーブル14にもとづいて、
測定項目を解読する。そして、解読結果に従つ
て、命令出現頻度測定処理部73、PSW・命令
コード・トレース処理部74、問題プログラム・
モードにおける実行命令論理アドレス分布測定処
理部75、スーパーバイザ・モードにおける実行
命令論理アドレス分布処理部76等の各種測定処
理部を呼び出す。これらの処理によつて、ログエ
リア13の所定の領域に、割込み時点の処理装置
1についての測定情報を収集する。そして、処理
77によつて、次のサンプルのために、RVMタ
イマ12に3.3msまたは422.4msの値を再設定
し、処理78によつて、上記内部フラグをオフに
した後、割込み発生箇所に復帰する。
部フラグをオンにする。この内部フラグは外部割
込みが2重に発生した場合に、シーケンシヤルに
処理するための制御フラグである。次に、処理7
2によつて、ログエリア13のアドレスをフエツ
チし、また測定制御テーブル14にもとづいて、
測定項目を解読する。そして、解読結果に従つ
て、命令出現頻度測定処理部73、PSW・命令
コード・トレース処理部74、問題プログラム・
モードにおける実行命令論理アドレス分布測定処
理部75、スーパーバイザ・モードにおける実行
命令論理アドレス分布処理部76等の各種測定処
理部を呼び出す。これらの処理によつて、ログエ
リア13の所定の領域に、割込み時点の処理装置
1についての測定情報を収集する。そして、処理
77によつて、次のサンプルのために、RVMタ
イマ12に3.3msまたは422.4msの値を再設定
し、処理78によつて、上記内部フラグをオフに
した後、割込み発生箇所に復帰する。
命令出現頻度処理部73は、例えば第11図図
示の如く処理する。まず、第11図図示処理80
によつて、外部割込み発生時のPSW7が退避さ
れた外部割込み旧PSWをフエツチする。次に処
理81によつて、測定制御テーブル14のFLAG
16−1を参照し、論理アドレスが有効であるか
どうかを調べる。有効でない場合には、直ちに処
理83に制御を移行する。有効である場合には、
処理82によつて、上記旧PSWから得られる命
令アドレスが、測定制御テーブル14で指定され
た測定情報収集範囲内に入つているかどうかを調
べる。範囲外の場合には、情報を収集しない。範
囲内であれば、処理83によつて、割込み発生時
の命令の命令コードおよび命令副コードを、旧
PSWの命令アドレスをもとにフエツチする。そ
して、第3図において説明した如く、処理84に
よつてログエリア13内の相対アドレスを生成
し、処理85によつて、対応する命令の出現頻度
を更新する。上記処理を設定したサンプリング同
期で発生する外部割込みごとに繰り返せば、全体
としてランダマイズによる正確な命令出現頻度情
報が得られることになる。なお、処理装置1にお
ける、各命令の実行時間が異なる場合には、実行
時間の逆数で重み付けを行い、収集結果を調整す
ればよい。
示の如く処理する。まず、第11図図示処理80
によつて、外部割込み発生時のPSW7が退避さ
れた外部割込み旧PSWをフエツチする。次に処
理81によつて、測定制御テーブル14のFLAG
16−1を参照し、論理アドレスが有効であるか
どうかを調べる。有効でない場合には、直ちに処
理83に制御を移行する。有効である場合には、
処理82によつて、上記旧PSWから得られる命
令アドレスが、測定制御テーブル14で指定され
た測定情報収集範囲内に入つているかどうかを調
べる。範囲外の場合には、情報を収集しない。範
囲内であれば、処理83によつて、割込み発生時
の命令の命令コードおよび命令副コードを、旧
PSWの命令アドレスをもとにフエツチする。そ
して、第3図において説明した如く、処理84に
よつてログエリア13内の相対アドレスを生成
し、処理85によつて、対応する命令の出現頻度
を更新する。上記処理を設定したサンプリング同
期で発生する外部割込みごとに繰り返せば、全体
としてランダマイズによる正確な命令出現頻度情
報が得られることになる。なお、処理装置1にお
ける、各命令の実行時間が異なる場合には、実行
時間の逆数で重み付けを行い、収集結果を調整す
ればよい。
PSW・命令コード・トレース処理部74は、
割込み発生時のPSWの内容または命令コードを
そのままログエリア13にトレースする処理を行
う。実行命令論理アドレス分布測定処理部75お
よび76は、予め区分された論理アドレスの範囲
毎に、実行命令の出現頻度を計数する処理を実行
する。同様に、任意の測定情報を収集する処理部
を設けて、呼び出すことができる。
割込み発生時のPSWの内容または命令コードを
そのままログエリア13にトレースする処理を行
う。実行命令論理アドレス分布測定処理部75お
よび76は、予め区分された論理アドレスの範囲
毎に、実行命令の出現頻度を計数する処理を実行
する。同様に、任意の測定情報を収集する処理部
を設けて、呼び出すことができる。
(5) 発明の効果
以上説明した如く本発明によれば、性能測定専
用のハードウエアを有さず、任意の性能測定項目
が設定可能となる。特に、処理装置に従来から存
在する機能を多く流用できるので、既存の処理装
置にも比較的容易に組込むことができる。また、
任意の大きさのログエリアを用意することがで
き、柔軟性・拡張性にも優れている。さらに、サ
ンプリング間隔を任意に調整できるので、性能測
定による通常の処理に対するオーバーヘツドを適
宜調整して、いつでも所望の測定情報を得ること
ができる。
用のハードウエアを有さず、任意の性能測定項目
が設定可能となる。特に、処理装置に従来から存
在する機能を多く流用できるので、既存の処理装
置にも比較的容易に組込むことができる。また、
任意の大きさのログエリアを用意することがで
き、柔軟性・拡張性にも優れている。さらに、サ
ンプリング間隔を任意に調整できるので、性能測
定による通常の処理に対するオーバーヘツドを適
宜調整して、いつでも所望の測定情報を得ること
ができる。
第1図は従来方式の例、第2図は本発明の一実
施例構成、第3図は本発明に係るログエリアの
例、第4図は測定制御テーブルの例、第5図ない
し第9図は性能測定設定部の処理説明図、第10
図および第11図は性能測定処理部の処理説明図
を示す。 図中、1は処理装置、6−1ないし6−4は性
能測定設定用命令、8はプログラム割込み処理
部、9は性能測定設定部、10は外部割込み処理
部、11は性能測定処理部、12はタイマ、13
はログエリア、14は測定制御テーブルを表わ
す。
施例構成、第3図は本発明に係るログエリアの
例、第4図は測定制御テーブルの例、第5図ない
し第9図は性能測定設定部の処理説明図、第10
図および第11図は性能測定処理部の処理説明図
を示す。 図中、1は処理装置、6−1ないし6−4は性
能測定設定用命令、8はプログラム割込み処理
部、9は性能測定設定部、10は外部割込み処理
部、11は性能測定処理部、12はタイマ、13
はログエリア、14は測定制御テーブルを表わ
す。
Claims (1)
- 1 少なくともプログラム割込み機構、タイマに
よる外部割込み機構およびフアームウエア機構を
有するデータ処理装置において、プログラム割込
みを生じさせる性能測定設定用命令を設けるとと
もに、性能測定項目に対応して測定情報が格納さ
れるログエリアと、性能測定項目情報および状態
制御情報が設定される測定制御テーブルとを設
け、上記性能測定設定用命令によるプログラム割
込みによつて起動され上記測定制御テーブルへの
情報設定および性能測定のサンプリング間隔を決
定するタイマ設定を行うフアームウエアによる性
能測定設定部と、該性能測定設定部が設定したタ
イマによる外部割込みによつて起動され上記測定
制御テーブルの内容にもとづいて上記ログエリア
に測定情報を収集するフアームウエアによる性能
測定処理部とをそなえたことを特徴とするフアー
ムウエアによる性能測定システム。
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57113317A JPS593651A (ja) | 1982-06-30 | 1982-06-30 | フア−ムウエアによる性能測定システム |
KR1019830002878A KR870000115B1 (ko) | 1982-06-30 | 1983-06-27 | 데이타 처리 시스템 |
CA000431520A CA1198825A (en) | 1982-06-30 | 1983-06-29 | Data processing system having a performance measurement system |
EP83303786A EP0098169B1 (en) | 1982-06-30 | 1983-06-30 | Data processing system |
US06/509,610 US4601008A (en) | 1982-06-30 | 1983-06-30 | Data processing system |
DE8383303786T DE3379851D1 (en) | 1982-06-30 | 1983-06-30 | Data processing system |
BR8303530A BR8303530A (pt) | 1982-06-30 | 1983-06-30 | Sistema de processamento de dados |
AU16411/83A AU546369B2 (en) | 1982-06-30 | 1983-06-30 | Data processing system |
ES523749A ES8405173A1 (es) | 1982-06-30 | 1983-06-30 | Sistema de proceso de datos. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP57113317A JPS593651A (ja) | 1982-06-30 | 1982-06-30 | フア−ムウエアによる性能測定システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS593651A JPS593651A (ja) | 1984-01-10 |
JPS6226732B2 true JPS6226732B2 (ja) | 1987-06-10 |
Family
ID=14609160
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP57113317A Granted JPS593651A (ja) | 1982-06-30 | 1982-06-30 | フア−ムウエアによる性能測定システム |
Country Status (9)
Country | Link |
---|---|
US (1) | US4601008A (ja) |
EP (1) | EP0098169B1 (ja) |
JP (1) | JPS593651A (ja) |
KR (1) | KR870000115B1 (ja) |
AU (1) | AU546369B2 (ja) |
BR (1) | BR8303530A (ja) |
CA (1) | CA1198825A (ja) |
DE (1) | DE3379851D1 (ja) |
ES (1) | ES8405173A1 (ja) |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6024647A (ja) * | 1983-07-20 | 1985-02-07 | Hitachi Ltd | システムの自律化資源管理方式 |
US5047919A (en) * | 1986-04-03 | 1991-09-10 | Harris Corporation | Method and apparatus for monitoring software execution in a parallel multiprocessor computer system |
US5283907A (en) * | 1986-05-20 | 1994-02-01 | Robert Bosch Gmbh | Process for safeguarding transfer of data from a temporary part into a main part of a non-volatile memory |
US4849879A (en) * | 1986-09-02 | 1989-07-18 | Digital Equipment Corp | Data processor performance advisor |
US5062055A (en) * | 1986-09-02 | 1991-10-29 | Digital Equipment Corporation | Data processor performance advisor |
US4910663A (en) * | 1987-07-10 | 1990-03-20 | Tandem Computers Incorporated | System for measuring program execution by replacing an executable instruction with interrupt causing instruction |
JP2712396B2 (ja) * | 1987-10-26 | 1998-02-10 | 日本電気株式会社 | 計算機システム用性能分析診断システム |
US4905171A (en) * | 1987-11-09 | 1990-02-27 | International Business Machines Corporation | Workstation controller performance monitor |
US5003462A (en) * | 1988-05-31 | 1991-03-26 | International Business Machines Corporation | Apparatus and method for implementing precise interrupts on a pipelined processor with multiple functional units with separate address translation interrupt means |
US5369764A (en) * | 1990-04-25 | 1994-11-29 | Blair; Gary L. | Method for sharing access to database elements in a data processing system |
JP3213765B2 (ja) * | 1991-03-11 | 2001-10-02 | サン・マイクロシステムズ・インコーポレーテッド | パイプラインプロセッサ用のコストを基にするヒューリスティック命令スケジューリングを最適にする方法および装置 |
US5301312A (en) * | 1991-08-21 | 1994-04-05 | International Business Machines Corporation | Method and system for utilizing benign fault occurrence to measure interrupt-blocking times |
JP3290280B2 (ja) * | 1994-01-13 | 2002-06-10 | 株式会社東芝 | 情報処理装置 |
JPH10500787A (ja) * | 1994-03-14 | 1998-01-20 | グリーン・ヒルズ・ソフトウェア・インコーポレーテッド | 高レベル言語プログラムの時間及び試験の最適化 |
JP3727382B2 (ja) * | 1994-12-26 | 2005-12-14 | 三菱電機株式会社 | 制御ソフトウェア実行システムの制御方法 |
US5881222A (en) * | 1995-01-23 | 1999-03-09 | International Business Machines Corporation | Method and apparatus for detecting performance problems in a windows-based computer system |
US6148437A (en) * | 1998-05-04 | 2000-11-14 | Hewlett-Packard Company | System and method for jump-evaluated trace designation |
US6681240B1 (en) | 1999-05-19 | 2004-01-20 | International Business Machines Corporation | Apparatus and method for specifying maximum interactive performance in a logical partition of a computer system independently from the maximum interactive performance in other partitions |
US6691146B1 (en) | 1999-05-19 | 2004-02-10 | International Business Machines Corporation | Logical partition manager and method |
US6467007B1 (en) * | 1999-05-19 | 2002-10-15 | International Business Machines Corporation | Processor reset generated via memory access interrupt |
US6959291B1 (en) | 1999-05-19 | 2005-10-25 | International Business Machines Corporation | Management of a concurrent use license in a logically-partitioned computer |
US7770034B2 (en) * | 2003-12-16 | 2010-08-03 | Intel Corporation | Performance monitoring based dynamic voltage and frequency scaling |
US7200824B1 (en) * | 2004-11-16 | 2007-04-03 | Altera Corporation | Performance/power mapping of a die |
US7814485B2 (en) * | 2004-12-07 | 2010-10-12 | Intel Corporation | System and method for adaptive power management based on processor utilization and cache misses |
US7346787B2 (en) * | 2004-12-07 | 2008-03-18 | Intel Corporation | System and method for adaptive power management |
WO2007043144A1 (ja) * | 2005-10-05 | 2007-04-19 | Hewlett-Packard Development Company, L.P. | 負荷試験装置およびその方法 |
JP5029245B2 (ja) * | 2007-09-20 | 2012-09-19 | 富士通セミコンダクター株式会社 | プロファイリング方法及びプログラム |
US7971084B2 (en) | 2007-12-28 | 2011-06-28 | Intel Corporation | Power management in electronic systems |
US9766672B2 (en) | 2007-12-28 | 2017-09-19 | Intel Corporation | System for managing power provided to a processor or memory based on a measured memory consumption characteristic |
WO2009147738A1 (ja) * | 2008-06-05 | 2009-12-10 | 富士通株式会社 | 情報処理装置及びその制御方法並びにモニタプログラム |
US8775830B2 (en) | 2009-12-16 | 2014-07-08 | Qualcomm Incorporated | System and method for dynamically controlling a plurality of cores in a multicore central processing unit based on temperature |
US8650426B2 (en) | 2009-12-16 | 2014-02-11 | Qualcomm Incorporated | System and method for controlling central processing unit power in a virtualized system |
US9104411B2 (en) | 2009-12-16 | 2015-08-11 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient deadlines |
US9563250B2 (en) | 2009-12-16 | 2017-02-07 | Qualcomm Incorporated | System and method for controlling central processing unit power based on inferred workload parallelism |
US9176572B2 (en) | 2009-12-16 | 2015-11-03 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient deadlines |
US9128705B2 (en) * | 2009-12-16 | 2015-09-08 | Qualcomm Incorporated | System and method for controlling central processing unit power with reduced frequency oscillations |
US8689037B2 (en) | 2009-12-16 | 2014-04-01 | Qualcomm Incorporated | System and method for asynchronously and independently controlling core clocks in a multicore central processing unit |
US8909962B2 (en) * | 2009-12-16 | 2014-12-09 | Qualcomm Incorporated | System and method for controlling central processing unit power with guaranteed transient deadlines |
US20110145559A1 (en) * | 2009-12-16 | 2011-06-16 | Thomson Steven S | System and method for controlling central processing unit power with guaranteed steady state deadlines |
US8370665B2 (en) | 2010-01-11 | 2013-02-05 | Qualcomm Incorporated | System and method of sampling data within a central processing unit |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3688263A (en) * | 1971-04-19 | 1972-08-29 | Burroughs Corp | Method and apparatus for diagnosing operation of a digital processor |
US3771144A (en) * | 1972-07-24 | 1973-11-06 | Ibm | Clock for computer performance measurements |
US3906454A (en) * | 1973-05-18 | 1975-09-16 | Bell Telephone Labor Inc | Computer monitoring system |
US4205370A (en) * | 1975-04-16 | 1980-05-27 | Honeywell Information Systems Inc. | Trace method and apparatus for use in a data processing system |
US4355389A (en) * | 1977-03-15 | 1982-10-19 | Tokyo Shibaura Electric Co., Ltd. | Microprogrammed information processing system having self-checking function |
US4231106A (en) * | 1978-07-13 | 1980-10-28 | Sperry Rand Corporation | Performance monitor apparatus and method |
-
1982
- 1982-06-30 JP JP57113317A patent/JPS593651A/ja active Granted
-
1983
- 1983-06-27 KR KR1019830002878A patent/KR870000115B1/ko not_active IP Right Cessation
- 1983-06-29 CA CA000431520A patent/CA1198825A/en not_active Expired
- 1983-06-30 DE DE8383303786T patent/DE3379851D1/de not_active Expired
- 1983-06-30 EP EP83303786A patent/EP0098169B1/en not_active Expired
- 1983-06-30 AU AU16411/83A patent/AU546369B2/en not_active Ceased
- 1983-06-30 US US06/509,610 patent/US4601008A/en not_active Expired - Lifetime
- 1983-06-30 BR BR8303530A patent/BR8303530A/pt not_active IP Right Cessation
- 1983-06-30 ES ES523749A patent/ES8405173A1/es not_active Expired
Also Published As
Publication number | Publication date |
---|---|
KR840005227A (ko) | 1984-11-05 |
EP0098169A2 (en) | 1984-01-11 |
AU546369B2 (en) | 1985-08-29 |
AU1641183A (en) | 1984-01-05 |
CA1198825A (en) | 1985-12-31 |
US4601008A (en) | 1986-07-15 |
DE3379851D1 (en) | 1989-06-15 |
EP0098169B1 (en) | 1989-05-10 |
ES523749A0 (es) | 1984-05-16 |
ES8405173A1 (es) | 1984-05-16 |
KR870000115B1 (ko) | 1987-02-11 |
BR8303530A (pt) | 1984-02-07 |
EP0098169A3 (en) | 1985-10-09 |
JPS593651A (ja) | 1984-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6226732B2 (ja) | ||
US20030037225A1 (en) | Apparatus and method for microcontroller debugging | |
EP1125199B1 (en) | Method of debugging a program thread | |
JP2002268915A (ja) | 非整列メモリアクセスを監視するシステムおよび方法 | |
JPS60124746A (ja) | デ−タ処理装置 | |
JPS6128144A (ja) | トレ−ス動作実行装置 | |
JP3133730B2 (ja) | 割り込み方法及び回路 | |
EP0525672A2 (en) | Microprocessor with program tracing | |
JPH02157957A (ja) | マイクロプロセッサ | |
JPH0465729A (ja) | シンボリック・デバッガ | |
JP2624798B2 (ja) | 処理装置のデバッグ機構 | |
JP3330767B2 (ja) | 情報処理装置および情報処理装置におけるトレース取得方法 | |
JPS5953955A (ja) | 性能測定方式 | |
JP2711159B2 (ja) | プロセッサ動作状態調整方法 | |
JPH0659931A (ja) | デバッグ装置 | |
JPH05120081A (ja) | 情報処理装置 | |
JPH0795288B2 (ja) | マイクロコンピュータ | |
JPS6259818B2 (ja) | ||
JPS6358552A (ja) | マイクロプロセサ | |
JPH036758A (ja) | マイクロプロセッサ | |
JPH03175539A (ja) | デバッグ用マイクロプロセッサ | |
JPH0793180A (ja) | マイクロプロセッサ | |
JPH0772874B2 (ja) | 割込み受取り装置 | |
JPH03246639A (ja) | マイクロプロセッサ | |
JPS6349941A (ja) | 演算処理装置 |