JPH10260872A - Computer system and recording medium - Google Patents

Computer system and recording medium

Info

Publication number
JPH10260872A
JPH10260872A JP10006154A JP615498A JPH10260872A JP H10260872 A JPH10260872 A JP H10260872A JP 10006154 A JP10006154 A JP 10006154A JP 615498 A JP615498 A JP 615498A JP H10260872 A JPH10260872 A JP H10260872A
Authority
JP
Japan
Prior art keywords
instruction
record
computer system
program
instructions
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
Application number
JP10006154A
Other languages
Japanese (ja)
Inventor
Yasuo Yoshimoto
安男 吉本
Masataka Tanaka
正隆 田中
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP10006154A priority Critical patent/JPH10260872A/en
Publication of JPH10260872A publication Critical patent/JPH10260872A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PROBLEM TO BE SOLVED: To maintain the performance analysis ability, to secure the tracing and analysis ability, and to automatically tune the system performance while saving the resource, by taking in the instruction of a program to be measured, setting the type of the instruction and the instruction in records until a branching destination appears, and summing up the number of the instructions until branching, which are contained in the records that are set, and the number of looping times. SOLUTION: A tracing task 4 sums up the records acquired from the program to be measured. An output buffer 5 preserves the records where the type of the instruction of the program to be measured, which the tracing mechanism 2 acquires, and the instruction until the branching destination appears are set. A sum-up buffer 6 sums up the number of instructions and the number of loops based on the preserved records from an output buffer 5 and stores them. They are installed in the computer system 1 and it is operated. Thus, performance analysis ability is maintained and tracing and analysis ability can be secured even in a situation that speed is accelerated, a scale is made large and it is diffused.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、被測定プログラム
のトレースを行う計算機システムおよび記録媒体に関す
るものである。
[0001] 1. Field of the Invention [0002] The present invention relates to a computer system and a recording medium for tracing a program to be measured.

【0002】[0002]

【従来の技術】従来、計算機システムの性能評価やデバ
ッグを行うために、実行命令やシステム内の発生事象を
トレースしている。
2. Description of the Related Art Conventionally, in order to evaluate and debug the performance of a computer system, execution instructions and events occurring in the system are traced.

【0003】この際、トレースしたデータを全て採取す
るとメモリ容量が膨大になってしまうので、これを解消
する各種の工夫が行われている。例えば特開昭57−1
91760号公報には、プログラムのループを検出し
て、同一ループの重複トレースを抑止し、命令トレース
量を削減するための装置、ループを検出する特別な回路
とループ検出用バッファを設けて行っていた。
At this time, if all the traced data is collected, the memory capacity becomes enormous, and various measures have been taken to solve this. For example, JP-A-57-1
In JP-A-91760, a device for detecting a loop of a program, suppressing duplicate tracing of the same loop, and reducing an instruction trace amount, a special circuit for detecting a loop, and a loop detection buffer are provided. Was.

【0004】[0004]

【発明が解決しようとする課題】上述したように計算機
システムの実行命令などのトレースを行う場合、全てを
採取するとメモリ容量が膨大となってしまうので、これ
を解消する回路や装置を設けたのでは、構成が複雑とな
ってしまう問題がある。
As described above, when tracing execution instructions and the like of a computer system, if all of them are collected, the memory capacity becomes enormous. Therefore, a circuit or device for solving this problem is provided. Then, there is a problem that a configuration becomes complicated.

【0005】また、従来の技術では、資源節約の反面、
網羅性テストのようなある特定の用途にしか適用できな
くなってしまったり、性能解析能力が確保できなくなっ
てしまったりなどの問題がある。
[0005] Further, in the conventional technology, while saving resources,
There are problems such as that it can be applied only to a specific application such as a completeness test and that the performance analysis capability cannot be secured.

【0006】本発明は、これらの問題を解決するため、
近年の高速化、大規模化、分散化の状況下においても、
資源を節約しながら、性能解析能力を維持してトレース
および解析能力を確保し、システム性能を自動チューニ
ングすることを目的としている。
[0006] The present invention solves these problems,
Even in recent years of high speed, large scale, and decentralized conditions,
The aim is to maintain performance analysis capabilities, secure trace and analysis capabilities, and automatically tune system performance while saving resources.

【0007】[0007]

【課題を解決するための手段】図1を参照して課題を解
決するための手段を説明する。図1において、トレース
タスク4は、被測定プログラムの命令を取り込んで命令
の種別、命令を分岐先が現れるまでレコードに設定した
り、集計したりなどするものである。
Means for solving the problem will be described with reference to FIG. In FIG. 1, a trace task 4 takes in instructions of a program to be measured, and sets the type of the instruction, the instruction in a record until a branch destination appears, and counts the instructions.

【0008】出力バッファ5は、レコードを出力するも
のである。次に、動作を説明する。トレースタスク4が
被測定プログラムの命令を取り込んで命令の種別、命令
を分岐先が現れるまでレコードに設定し、設定されたレ
コード中に含まれる分岐するまでの命令数およびループ
回数を集計するようにしている。
[0008] The output buffer 5 is for outputting a record. Next, the operation will be described. The trace task 4 fetches the instruction of the program to be measured, sets the type of the instruction and the instruction in a record until a branch destination appears, and counts the number of instructions and the number of loops until the branch included in the set record. ing.

【0009】この際、分岐命令のアドレス、分岐するま
での命令数、およびループ回数を時系列に出力するよう
にしている。また、レコードに時系列に順次設定すると
きに次に分岐するアドレスが直前のアドレスと同一のと
きにアドレスの設定を省略し、メモリ容量を削減するよ
うにしている。
At this time, the address of the branch instruction, the number of instructions until branching, and the number of loops are output in a time series. Further, when sequentially setting the records in time series, the address setting is omitted when the next branch address is the same as the immediately preceding address, so that the memory capacity is reduced.

【0010】また、被測定プログラムの命令を取り込む
際に、所定の時間毎に取り込むようにしている。また、
被測定プログラムの命令を取り込んだときに当該命令が
割り込み命令であった場合に、種別が割り込み命令およ
び割り込み内容をレコードに設定するようにしている。
[0010] Further, when the command of the program to be measured is fetched, it is fetched at predetermined time intervals. Also,
When the instruction of the program to be measured is fetched and the instruction is an interrupt instruction, the type of the interrupt instruction and the content of the interrupt are set in the record.

【0011】また、命令が割り込み命令であった場合
に、レコードに日時を設定するようにしている。また、
被測定プログラムの命令を取り込んだときに命令が転送
命令であった場合に、転送量をレコードに設定するよう
にしている。
When the instruction is an interrupt instruction, the date and time are set in the record. Also,
When the instruction of the program to be measured is fetched and the instruction is a transfer instruction, the transfer amount is set in a record.

【0012】また、分岐するまでの命令数とループ回数
の一方あるいは両者の途中経過をリアルタイムに表示す
るようにしている。また、レコード中に含まれる分岐す
るまでの命令数、あるいは当該命令が含まれる名称でソ
ートし、先頭からページに順次割り当て、実行速度を向
上させるようにしている。
[0012] In addition, one or both of the number of instructions and the number of loops up to the branch are displayed in real time. Also, the number of instructions included in a record until branching or the name including the instruction is sorted and sequentially assigned to a page from the top to improve the execution speed.

【0013】また、被測定プログラムの命令を取り込ん
で当該命令の種別、命令を分岐先が現れるまでレコード
に設定、および分岐先が現れたときに分岐を表す命令の
種別、および分岐先をレコードに設定することを繰り返
すトレース手段と、トレース手段によって設定されたレ
コード中に含まれる分岐するまでの命令数およびループ
回数を集計する手段として機能するプログラムを記憶媒
体に格納し、図1の計算機システムにインストールして
動作させるようにしている。
Further, the instruction of the program to be measured is fetched, the type of the instruction, the instruction is set in a record until the branch destination appears, and the instruction type indicating the branch when the branch destination appears, and the branch destination are recorded in the record. A tracing means for repeating setting and a program functioning as a means for counting the number of instructions and the number of loops included in a record set by the tracing means until branching are stored in a storage medium, and stored in the computer system of FIG. Install and run.

【0014】従って、近年の高速化、大規模化、分散化
の状況下においても、資源を節約しながら、性能解析能
力を維持してトレースおよび解析能力を確保し、システ
ム性能を自動チューニングすることが可能となる。
[0014] Therefore, even in recent high-speed, large-scale, and decentralized situations, it is necessary to maintain performance analysis capability, secure trace and analysis capability, and automatically tune system performance while saving resources. Becomes possible.

【0015】[0015]

【発明の実施の形態】次に、図1から図9を用いて本発
明の実施の形態および動作を順次詳細に説明する。ここ
で、記録媒体から読み出したプログラムあるいは外部記
憶装置であるハードディスク装置などから読み出したプ
ログラム、またはセンタの外部記憶装置から読み出して
転送を受けたプログラムを主記憶装置にローディングし
て起動し、以下に説明する各種処理を行うようにしてい
る。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, embodiments and operations of the present invention will be sequentially described in detail with reference to FIGS. Here, the program read from the recording medium or the program read from the hard disk device as the external storage device, or the program read and transferred from the external storage device of the center is loaded into the main storage device and started. Various processes to be described are performed.

【0016】図1は、本発明のシステム構成図を示す。
図1において、計算機システム1は、プログラムに従っ
て各種処理を行うものであり、AVM(仮想計算機シス
テム)であって、ここでは、被測定プログラムについて
トレースデータを採取するためのものである。計算機シ
ステム1は、トレース機構2、OS(オペレーティング
システム)、およびVM(仮想計算機)3などから構成
されるものである。
FIG. 1 shows a system configuration diagram of the present invention.
In FIG. 1, a computer system 1 performs various processes according to a program, and is an AVM (virtual computer system) for collecting trace data of a program to be measured. The computer system 1 includes a tracing mechanism 2, an OS (operating system), a VM (virtual computer) 3, and the like.

【0017】トレース機構2は、VM3が実行する、こ
こでは被測定プログラムの命令を読み込んだりなどする
ものである。VM3は、仮想計算機であり、ここでは、
被測定プログラムを実行および被測定プログラムから採
取したデータを集計したりなどするトレースタスク4お
よび左側に記載したCPU、メモリ31、LBS32、
TLB33などから構成されるものである。
The tracing mechanism 2 is for executing an instruction of the program to be measured executed by the VM 3, here, for example. VM3 is a virtual machine, and here,
A trace task 4 for executing the program to be measured and totalizing data collected from the program to be measured, and the CPU, memory 31, LBS 32,
It is composed of a TLB 33 and the like.

【0018】メモリ31は、各種制御を行うために必要
なパラメータなどを設定する制御表34などを格納する
ものである。CPU0、1、2、3は、プログラムに従
い各種処理を行うプロセッサであって、内部に高速アク
セス可能なメモリであるLBS(Local Storage Buffer)
32などを持つものである。
The memory 31 stores a control table 34 for setting parameters and the like necessary for performing various controls. The CPUs 0, 1, 2, and 3 are processors that perform various processes in accordance with programs, and are LBSs (Local Storage Buffers), which are memories that can be accessed at high speed.
32.

【0019】TLB(Translation Look aside Buffer)
33は、仮想アドレスと主記憶上のアドレスとを高速に
変換するためのテーブルである。トレースタスク4は、
被測定プログラムから採取したデータ(レコード)を集
計したりなどするものである。
TLB (Translation Look aside Buffer)
33 is a table for converting a virtual address and an address on the main memory at high speed. Trace task 4
For example, data (records) collected from the program under measurement is totaled.

【0020】出力バッファ5は、トレース機構2が採取
した被測定プログラムの命令の種別、分岐先が現れるま
での命令を設定したレコードを保存するメモリあるいは
外部記憶装置である。
The output buffer 5 is a memory or an external storage device for storing a record in which the instruction type of the program to be measured collected by the trace mechanism 2 and the instruction until the branch destination appears are set.

【0021】集計バッファ6は、出力バッファ5から保
存されたレコードをもとに集計(命令数、ループ数など
の集計)を行って格納するものである。図2は、本発明
の背景説明図を示す。
The tallying buffer 6 performs tallying (totaling of the number of instructions, the number of loops, etc.) based on the records stored from the output buffer 5 and stores them. FIG. 2 shows a background explanatory diagram of the present invention.

【0022】図2の(a)は、図1に示すように、例え
ば4つのCPUを並列動作させ、CPU能力が400%
としたときの様子を示す。左端の「ハード」は、ハード
ウェアの能力を示し、400%のCPU能力からメモリ
アクセスの競合による能力の低下、およびその他(ハー
ドMP制御、命令の使い方等)による能力の低下を減算
した実効能力を示したものである。
FIG. 2A shows, as shown in FIG. 1, that four CPUs are operated in parallel and the CPU capacity is 400%.
It shows the situation at the time. The "hard" at the left end indicates the capability of the hardware, and the effective capability obtained by subtracting the capability decrease due to memory access competition and the capability decrease due to other (hard MP control, instruction usage, etc.) from 400% CPU capability. It is shown.

【0023】左端の「ハード+ソフト」は、ハードウェ
アの能力およびソフトウェアの能力を合わせた能力を示
し、「ハード」のみの場合に比してソフトウェアの能力
による低下があるために更に低下している。ここで、能
力の低下を改善するには、図示のように、 ・LBSヒット率の改善 ・TLBヒット率の改善 ・ロック競合(メモリアクセスの排他の競合)の削減 などを行うことが有効である。このため、図2の(b)
の右側に示すように関連モジュールを自動パッキングを
行うことにより、改善できる。
The "hard + soft" at the left end indicates the combined ability of the hardware and the software, and further decreases due to the software ability compared to the case of "hard" only. I have. As shown in the figure, it is effective to improve the LBS hit rate, improve the TLB hit rate, reduce lock contention (contention of exclusive access to memory access), etc., as shown in the figure. . For this reason, FIG.
By performing automatic packing of related modules as shown on the right side of FIG.

【0024】図2の(b)は、関連モジュールの自動パ
ッキングの様子を示す。ここで、□はアプリに無関係な
モジュールであり、■はアプリの延長で動作するモジュ
ールである。
FIG. 2B shows the state of automatic packing of related modules. Here, □ is a module irrelevant to the application, and ■ is a module that operates as an extension of the application.

【0025】図2の(b−1)は、メモリ上でモジュー
ルが動作する様子を示したものである。この状態では、
■のアプリの延長で動作するモジュールが、ページ内で
なく散らばって動作しているため、LBSヒット率、T
LBヒット率が小さく、CPUの実効能力が低くなる。
このため、図示の (a)コンポネント方式 (b)CPU時間方式 (c) (a)+(b) のいずれかによって関連モジュールを自動パッキング
し、図2の(b−2)に示すように、ここでは、■のア
プリの延長で動作するモジュールをソートしてページ内
で動作するようにし、CPU実効能力を高めることが可
能となる。以下このための被測定プログラムの命令のト
レースを行い、その結果をもとに上記(a)、(b)、
あるいは(c)の いずれかで関連モジュールを自動パ
ッキングするためのデータを採取する手順を詳細に説明
する。
FIG. 2B-1 shows how the module operates on the memory. In this state,
Since the modules that operate as an extension of the app in (1) operate not in the page but in a scattered manner, the LBS hit rate, T
The LB hit rate is small, and the effective performance of the CPU is low.
For this reason, the related modules are automatically packed by one of the following (a) component system (b) CPU time system (c) (a) + (b), and as shown in (b-2) of FIG. Here, the modules that operate as an extension of the application (1) are sorted so as to operate within the page, and the CPU effective performance can be increased. The instructions of the program to be measured are traced for this purpose, and based on the results, the above (a), (b),
Alternatively, the procedure for collecting data for automatic packing of the related module in either (c) will be described in detail.

【0026】図3は、本発明の動作説明フローチャート
を示す。図3において、S1は、モジュール別カウンタ
テーブルの初期設定を行う。これは、被測定プログラム
のモジュール別のカウンタテーブルに ・モジュール名 ・コンポネント名 ・開始アドレス ・終了アドレス を設定する。
FIG. 3 is a flowchart illustrating the operation of the present invention. In FIG. 3, S1 initializes the counter table for each module. To do this, set the module name, component name, start address, and end address in the counter table for each module of the program to be measured.

【0027】S2は、出力バッファに格納レコードの初
期設定を行う。これは、後述する図4の(b)に示すよ
うにレコードの初期設定として、 ・種別に01 ・分岐先に開始アドレス を設定する。
In step S2, the record stored in the output buffer is initialized. This is, as shown in FIG. 4 (b) described later, as the initial setting of the record:-01 is set for the type-start address is set for the branch destination.

【0028】S3は、採取処理を行う。これは、後述す
る図7に示すように、全命令について1命令毎に採取、
あるいは所定時間毎に命令を採取する。S4は、レコー
ドに命令コードを設定する。これは、後述する図4の
(b)に示すようにレコードに命令コードを設定する。
In step S3, a sampling process is performed. This is, as shown in FIG. 7 described later, collected for each instruction for all instructions,
Alternatively, an instruction is collected every predetermined time. In step S4, an instruction code is set in the record. This sets an instruction code in a record as shown in FIG.

【0029】S5は、分岐命令または割り込み命令か判
別する。これは、S4でレコードに命令コードを順次設
定してゆき、分岐命令あるいは割り込み命令をレコード
に設定したか判別する。YESの場合には、S6以降に
進み、次のレコードに設定を開始する。一方、NOの場
合には、S3に戻り、次の命令の命令コードをレコード
に設定することを繰り返す。
At S5, it is determined whether the instruction is a branch instruction or an interrupt instruction. That is, in S4, the instruction code is sequentially set in the record, and it is determined whether a branch instruction or an interrupt instruction is set in the record. In the case of YES, the process proceeds to S6 and thereafter, and setting of the next record is started. On the other hand, in the case of NO, the process returns to S3, and the setting of the instruction code of the next instruction in the record is repeated.

【0030】S6は、出力バッファが満杯か判別する。
YESの場合には、出力バッファが満杯でこれ以上命令
コードなどを設定したレコードを格納できないと判明し
たので、S7に進む。NOの場合には、S10に進む。
In step S6, it is determined whether the output buffer is full.
In the case of YES, it is determined that the output buffer is full and it is no longer possible to store a record in which an instruction code or the like is set, so the process proceeds to S7. In the case of NO, the process proceeds to S10.

【0031】S7は、出力バッファが満杯と判明したの
で、新トレース処理を行う。例えば後述する図4の
(c)の出力バッファに格納したレコードについて、命
令数を累積、ループ数を累積し、図4の(d)集計バッ
ファに示すように集計する処理を行う。
In S7, since the output buffer is found to be full, a new trace process is performed. For example, for a record stored in the output buffer of FIG. 4C described later, the number of instructions is accumulated, the number of loops is accumulated, and a process of totaling as shown in the totaling buffer of FIG. 4D is performed.

【0032】S8は、モジュール別カウント処理を行
う。これは、後述する図6に示すように、モジュール名
毎に命令数などをカウントする。S9は、出力バッファ
のポインタを先頭に戻す。これは、S7およびS8で出
力バッファ中のレコードをもとに集計を行い、集計バッ
ファに格納したので、次のレコードを出力バッファの先
頭から格納するようにポインタを先頭に戻す。
In step S8, a counting process for each module is performed. This counts the number of instructions for each module name, as shown in FIG. 6 described later. A step S9 returns the output buffer pointer to the head. In this case, since the tabulation is performed based on the records in the output buffer in S7 and S8 and stored in the tabulation buffer, the pointer is returned to the top so that the next record is stored from the top of the output buffer.

【0033】S10は、出力バッファにレコードを格納
する。これは、既述した図4の(b)のレコードを出力
バッファに格納する。S11は、割り込み命令か判別す
る。YESの場合には、S12ないしS14の処理を行
う。一方、NOの場合には、割り込み命令以外の命令で
あるので、S15、S16を行う。
Step S10 stores the record in the output buffer. This stores the record of FIG. 4B described above in the output buffer. In S11, it is determined whether the instruction is an interrupt instruction. In the case of YES, the processing of S12 to S14 is performed. On the other hand, in the case of NO, since the instruction is other than the interrupt instruction, S15 and S16 are performed.

【0034】S12は、割り込み命令と判明したので、
レコードの種別に02を設定する。S13は、レコード
の分岐先、割り込みコード、割り込み詳細コードを設定
する。
Since S12 has been determined to be an interrupt instruction,
Set 02 to the record type. In step S13, a branch destination of the record, an interrupt code, and an interrupt detail code are set.

【0035】S14は、出力バッファにレコードを格納
する。これらS12、S13、S14は、図4の(c)
のに示すように、 種別 分岐先 割り込み命令・割り込みコード 詳細コード 02 24 0A 2F 05 と設定して出力バッファに格納する。そして、S3に戻
り繰り返す。
In step S14, the record is stored in the output buffer. These steps S12, S13 and S14 correspond to (c) of FIG.
As shown in (2), the type is set as branch destination interrupt instruction / interrupt code detailed code 02 24 0A 2F 05 and stored in the output buffer. Then, the process returns to S3 and repeats.

【0036】一方、S15は、割り込み命令でない命令
と判明したので、レコードの種別に01を設定する。S
16は、レコードの分岐先を設定する。これらS15、
S16は、図4の(c)のに示すように、 種別 分岐先 命令 01 18 5A46 と設定して出力バッファに格納する。そして、S3に戻
り繰り返す。
On the other hand, in S15, since it is determined that the instruction is not an interrupt instruction, 01 is set in the record type. S
16 sets the branch destination of the record. These S15,
In step S16, as shown in (c) of FIG. 4, the type is set to branch destination instruction 01 18 5A46 and stored in the output buffer. Then, the process returns to S3 and repeats.

【0037】以上によって、被測定プログラムについ
て、初期設定したモジュール名、コンポネント名、開始
アドレス、終了アドレスをもとに、分岐命令あるいは割
り込み命令が現れるまでレコードに命令の種別、分岐先
アドレス、命令コードなどを設定して出力バッファに格
納する。出力バッファが満杯となったときにレコードの
情報を集計して集計バッファに格納して保存することが
可能となる。
As described above, for the program to be measured, the type of instruction, branch destination address, and instruction code are stored in the record until a branch instruction or an interrupt instruction appears based on the initially set module name, component name, start address, and end address. And store it in the output buffer. When the output buffer becomes full, record information can be totaled and stored in the totaling buffer for storage.

【0038】図4は、本発明のトレース説明図を示す。
図4の(a)は、被測定プログラムM1の例を示す。こ
こで、左端の欄外がアドレスを示し、矩形内の左端は命
令コードを示す。
FIG. 4 is an explanatory diagram of a trace according to the present invention.
FIG. 4A shows an example of the measured program M1. Here, the left margin indicates the address, and the left margin in the rectangle indicates the instruction code.

【0039】図4の(b)は、レコードの例を示す。こ
こでは、左側から種別、分岐先(分岐先アドレス)、命
令コードを分岐命令あるいは割り込み命令が出現して格
納するまでレコードに設定する(レコードの右端の末尾
は分岐命令あるいは割り込み命令のいずかとここではな
る)。
FIG. 4B shows an example of a record. Here, from the left side, the type, branch destination (branch destination address), and instruction code are set in a record until a branch instruction or an interrupt instruction appears and is stored. Here it is).

【0040】図4の(c)は、出力バッファの例を示
す。ここでは、分岐命令のときは、先頭から命令の種別
01、分岐先(開始アドレス)、命令コードをレコード
に設定して格納する。割り込み命令のときは、に示す
ように、先頭から命令の種別02、分岐先(開始アドレ
ス)、命令コード、詳細コード05をレコードに設定し
て格納する。また、時刻をレコードに入れるようにして
もよい。
FIG. 4C shows an example of the output buffer. Here, in the case of a branch instruction, the instruction type 01, the branch destination (start address), and the instruction code are set and stored in the record from the top. In the case of an interrupt instruction, the instruction type 02, the branch destination (start address), the instruction code, and the detailed code 05 are set and stored in the record from the beginning, as shown in FIG. Also, the time may be entered in the record.

【0041】図4の(d)は、集計バッファの例を示
す。これは、図4の(c)の出力バッファが満杯になっ
たときにレコード毎に命令コードの命令数を集計、ルー
プ数を集計し、種別に続き、分岐先、命令数、ループ数
を組みとして順次設定したものである。ここで、分岐先
の先頭は命令アドレスそのまま設定し、以降は下2桁の
みを設定して集計バッファのメモリ量の節約を行うよう
にする。
FIG. 4D shows an example of a totaling buffer. This is because when the output buffer in FIG. 4C becomes full, the number of instructions of the instruction code is totaled for each record, the number of loops is totaled, and the type, the branch destination, the number of instructions, and the number of loops are combined. Are sequentially set. Here, the instruction address is set as it is at the head of the branch destination, and thereafter only the last two digits are set to save the memory capacity of the totaling buffer.

【0042】また、右端に示すように、モジュール名M
1に対応づけて命令数のリアルタイムに表示し、途中経
過をオペレータに知らせる。図5は、本発明の新トレー
ス処理フローチャートを示す。これは、既述した図3の
S7の詳細処理フローチャートを示す。
As shown at the right end, the module name M
The number of instructions is displayed in real time in association with 1, and the progress is notified to the operator. FIG. 5 shows a flowchart of the new trace processing of the present invention. This shows the detailed processing flowchart of S7 in FIG. 3 described above.

【0043】図5において、S21は、命令レコード作
成中フラグをOFFにセットする。S22は、出力バッ
ファから1レコードを取り出す。S23は、種別を判別
する。これは、例えば既述した図4の(c)の出力バッ
ファから1レコード、例えばのレコードを取り出し、
種別を“01”(命令レコード)と判別する。種別が0
1(命令レコード)と判明した場合には、S24に進
む。一方、種別が02(割り込みレコード)の場合に
は、S33に進む。
In FIG. 5, S21 sets an instruction record creation flag to OFF. In step S22, one record is extracted from the output buffer. In step S23, the type is determined. This means that, for example, one record, for example, a record is extracted from the output buffer of FIG.
The type is determined to be “01” (instruction record). Type is 0
If it is determined to be 1 (instruction record), the process proceeds to S24. On the other hand, if the type is 02 (interrupt record), the process proceeds to S33.

【0044】S24は、S23で01(命令レコード)
と判明したので、命令数をカウントする。S25は、累
計をカウントアップする。これらS24、S25は、例
えば既述した図4の(c)ののレコード 01 18 5A46 の場合には、命令数を5A46の2つとカウントして累
計をカウントアップする。
S24 is 01 (instruction record) in S23
Then, the number of instructions is counted. In step S25, the total is counted up. In S24 and S25, for example, in the case of the record 01 185A46 in FIG. 4C described above, the number of instructions is counted as 2 of 5A46, and the cumulative total is counted up.

【0045】S26は、命令レコード作成中フラグがO
N/OFFのいずれか判別する。ONの場合(S31で
前回にONとされた場合)には、S27に進む。OFF
の場合には、S29に進む。
In step S26, the command record creation flag is set to O
One of N / OFF is determined. When it is ON (when it was previously turned ON in S31), the process proceeds to S27. OFF
In the case of, the process proceeds to S29.

【0046】S27は、出力バッファ上の分岐先と、命
令数が集計バッファ上の分岐先と命令数が等しいか判別
する。これは、ループしているか判別するものである。
YESの場合には、ループしていると判明したので、S
28でループ数を+1し、S22に戻る。一方、NOの
場合には、ループしていないと判明したので、S29に
進む。
In step S27, it is determined whether the number of instructions in the output buffer is equal to the number of instructions in the totaling buffer. This is to determine whether or not a loop has occurred.
In the case of YES, it has been determined that a loop has occurred, so S
At 28, the number of loops is incremented by 1, and the process returns to S22. On the other hand, in the case of NO, it is determined that no loop has occurred, so the flow proceeds to S29.

【0047】S29は、S26で命令レコード作成中=
OFFあるいは命令レコード作成中=ONであってもル
ープしていないと判明したので、集計バッファのポイン
タを進める。
At S29, an instruction record is being created at S26 =
Since it is determined that the loop is not executed even if the command is OFF or the command record is being created = ON, the pointer of the totaling buffer is advanced.

【0048】S30は、分岐先、命令数、ループ数を集
計バッファに設定する。S31は、命令レコード作成中
=ONに設定する。S32は、ループ数=0と設定す
る。そして、S22に戻り繰り返す。
In step S30, the branch destination, the number of instructions, and the number of loops are set in the counting buffer. A step S31 sets the command record being created = ON. In step S32, the number of loops is set to zero. Then, the process returns to S22 and is repeated.

【0049】以上のS23の種別01(命令レコード)
の場合には、S24ないしS32によって、出力バッフ
ァ中から取り出した1レコードについて命令数、ループ
数の集計を行うことが可能となる。
Type 01 of S23 (instruction record)
In the case of (1), the number of instructions and the number of loops can be totaled for one record extracted from the output buffer through S24 to S32.

【0050】S33は、S23の種別02(割り込みレ
コード)と判明したので、集計バッファのポインタを進
める。S34は、割り込みレコードを集計バッファに格
納する。
In step S33, since the type 02 (interrupt record) of step S23 has been determined, the pointer of the totaling buffer is advanced. A step S34 stores the interrupt record in the tally buffer.

【0051】S35は、命令レコード作成中=OFFに
設定する。以上のS23の種別02(割り込みレコー
ド)の場合には、S33ないしS35によって、出力バ
ッファ中から取り出した1レコードについてそのまま集
計バッファに格納する。
A step S35 sets the command record being created = OFF. In the case of the type 02 (interrupt record) in S23 described above, one record extracted from the output buffer is stored in the totaling buffer as it is in S33 to S35.

【0052】図6は、本発明のモジュール別カウント処
理フローチャートを示す。これは、既述した図3のS8
の詳細処理フローチャートである。図6の(a)におい
て、S41は、変数I=1と初期設定する。
FIG. 6 is a flowchart showing a counting process for each module according to the present invention. This corresponds to S8 in FIG.
It is a detailed process flowchart of. In FIG. 6A, S41 initializes a variable I = 1.

【0053】S42は、条件1を満たすか判別する。こ
れは、既述した図5のフローチャートで集計した集計先
バッファの分岐先が、図示の下記の条件1を満たすか判
別する。YESの場合には、S44でI番目のカウンタ
に命令数を足す。一方、NOの場合には、S43で変数
Iに+1し、S42を繰り返す。
In the step S42, it is determined whether or not the condition 1 is satisfied. That is, it is determined whether the branch destination of the counting destination buffer calculated in the flowchart of FIG. 5 described above satisfies the following condition 1 shown in the drawing. If YES, the number of instructions is added to the I-th counter in S44. On the other hand, if NO, the variable I is incremented by 1 in S43, and S42 is repeated.

【0054】条件1:(集計バッファの分岐先≧モジュ
ール別カウンタテーブルの開始アドレス)AND(集計
バッファの分岐先≦モジュール別カウンタテーブルの終
了アドレス) 以上の手順によって、図6の(b)のモジュール別カウ
ンタテーブルに示すように、モジュール名毎のカウンタ
数が集計されることとなる。
Condition 1: (branch destination of total buffer ≧ start address of counter table for each module) AND (branch destination of total buffer ≦ end address of counter table for each module) By the above procedure, the module shown in FIG. As shown in the separate counter table, the number of counters for each module name is totaled.

【0055】図7は、本発明の採取処理フローチャート
を示す。これは、既述した図3のS3の詳細処理フロー
チャートを示す。図7において、S51は、サンプリン
グモードが設定されているか判別する。YESの場合に
は、S52で所定時間毎に被測定プログラムから命令を
採取する。一方、NOの場合には、被測定プログラムか
ら全命令を1命令毎に採取する。そして、既述した図3
のS4に進む。
FIG. 7 shows a flowchart of the sampling process according to the present invention. This shows the detailed processing flowchart of S3 in FIG. 3 described above. In FIG. 7, S51 determines whether the sampling mode is set. In the case of YES, an instruction is sampled from the program to be measured every predetermined time in S52. On the other hand, in the case of NO, all instructions are sampled from the program to be measured for each instruction. And the already described FIG.
To S4.

【0056】以上によって、サンプリングモードを設定
すれば、所定時間毎に命令を採取し、サンプリングモー
ドを解除すれば、全命令を1命令毎に採取し、既述した
図3のS4以降のトレース処理などを任意に切り換える
ことが可能となる。
As described above, if the sampling mode is set, instructions are sampled at predetermined time intervals, and if the sampling mode is canceled, all instructions are sampled one by one, and the trace processing after S4 in FIG. Can be arbitrarily switched.

【0057】図8は、本発明の転送長採取説明図を示
す。これは、図8の(a)の転送命令 MVC 0(5,2),0(1) を実行するときの例を上げて転送長をレコードに設定す
る様子を示したものである。
FIG. 8 is a diagram for explaining transfer length collection according to the present invention. This shows how the transfer length is set in the record by taking an example of executing the transfer instruction MVC 0 (5, 2), 0 (1) in FIG. 8A.

【0058】図8の(b)は、図8の(a)の転送の様
子を示したものである。図8の(a)の転送命令は、レ
ジスタ1の示す5バイト領域内のデータを、レジスタ2
の示す5バイト領域に転送する命令である旨を模式的に
示したものである。
FIG. 8B shows the transfer state of FIG. 8A. The transfer instruction shown in FIG. 8A transfers the data in the 5-byte area indicated by the register 1 to the register 2
5 schematically shows that the instruction is a command to be transferred to the 5-byte area shown in FIG.

【0059】図8の(c)は、出力バッファに格納する
レコードを示す。ここでは、図示のように、先頭に命令
レコードを表す種別“01”に続けて転送レコードを表
す種別“03”の2つのレコードを図示のように出力す
る。ここで、2番目の種別“03”のレコードの末尾の
“05”は転送長を表す。
FIG. 8C shows records stored in the output buffer. Here, as shown in the figure, two records of the type "03" representing the transfer record are output as shown in the figure following the type "01" representing the instruction record at the head. Here, “05” at the end of the record of the second type “03” indicates the transfer length.

【0060】以上のように、命令が転送命令の場合に
は、転送レコード(種別03)に転送長を付加する。こ
れにより、転送した転送長をレコードに設定することが
可能となる。
As described above, when the instruction is a transfer instruction, the transfer length is added to the transfer record (type 03). As a result, the transferred transfer length can be set in the record.

【0061】図9は、本発明の動作説明フローチャート
(トレース終了処理)を示す。図9において、S61
は、方式を判別する。これは、既述した図3のフローチ
ャートのS8に従って集計した図6の(b)のモジュー
ル別カウンタテーブルについて、ソートする方式を判別
するものである。
FIG. 9 is a flow chart for explaining the operation of the present invention (trace end processing). In FIG. 9, S61
Determines the method. This is to determine the sorting method for the module-by-module counter table of FIG. 6B, which is tabulated in accordance with S8 of the flowchart of FIG.

【0062】(a) コンポネント方式と判別された場
合には、S62でコンポネント名をキーにモジュール別
カウンタテーブルをソートする(第2キーはカウンタ、
即ちコンポネント名が同一のときはカウンタ値でソート
する)。例えばコンポネント名 COMP−01 COMP−02 COMP−03 のようにソートする。このコンポネント名でソートする
ことにより、類似の名前をまとめて(類似の名前のコン
ポネントを同一ページにまとめて配置し)、ヒット率
(図2参照)を向上させることが可能となる。
(A) If the component type is determined, the counter table for each module is sorted using the component name as a key in S62 (the second key is a counter,
That is, if the component names are the same, the components are sorted by the counter value.) For example, the component names are sorted like COMP-01 COMP-02 COMP-03. By sorting by component name, it is possible to improve the hit rate (see FIG. 2) by grouping similar names together (arranging components having similar names on the same page).

【0063】(b) CPU時間方式とと判別された場
合には、S63でカウンタをキーに大きい順にモジュー
ル別カウンタテーブルをソートする(第2キーはコンポ
ネント名、即ちカウンタ値が同一のときはコンポネント
名でソートする)。CPU時間(命令数)でソートする
ことにより、命令を多く使うモジュールをまとめて(命
令を多く使うモジュールを同一ページにまとめて配置
し)、ヒット率(図2参照)を向上させることが可能と
なる。
(B) If it is determined that the CPU time method is used, the counter table for each module is sorted in ascending order using the counter as a key in S63 (the second key is the component name, ie, if the counter values are the same, the component is Sort by name). By sorting by CPU time (number of instructions), modules that use a lot of instructions can be grouped together (modules that use a lot of instructions are grouped and arranged on the same page) to improve the hit rate (see FIG. 2). Become.

【0064】(c) (a)、(b)方式の併用する場
合には、S64でカウンタをキーに大きい順にモジュー
ル別カウンタテーブルをソートする(第2キーはモジュ
ール名、即ちカウンタ値が同一のときはモジュール名で
ソートする)、あるいはモジュール名をキーにモジュー
ル別カウンタテーブルをソートする(第2キーはカウン
タ、即ちモジュール名が同一のときはカウンタ値でソー
トする)。
(C) When the methods (a) and (b) are used together, the counter table for each module is sorted in ascending order using the counter as a key in S64 (the second key is the module name, that is, the counter value is the same). When the module name is a key, the module-specific counter table is sorted (the second key is a counter, that is, when the module names are the same, the counter value is sorted).

【0065】S66は、モジュール別カウンタテーブル
からパッキングリストの作成を行う。これは、ページ毎
に以下のようにモジュール名を指定する(パッキングリ
スト)(M1、M2、M3・・・)。
In step S66, a packing list is created from the module-specific counter table. This specifies a module name for each page as follows (packing list) (M1, M2, M3...).

【0066】S67は、パッキングリストのシステムパ
ラメタへの出力を行う。以上によって、図6の(b)の
モジュール別カウンタテーブルをもとにコンポネント
名、カウンタ値、モジュール名をキーにしてソートし、
それぞれに最適なパッキングリストを作成しシステムパ
ラメタに出力し、ページ内に最適なモジュールを配置
し、ヒット率を向上させることが可能となる。
In step S67, the packing list is output to system parameters. As described above, the components are sorted based on the component name, the counter value, and the module name based on the module-specific counter table in FIG.
It is possible to create an optimal packing list for each and output it to a system parameter, arrange an optimal module in a page, and improve the hit rate.

【0067】[0067]

【発明の効果】以上説明したように、本発明によれば、
被測定プログラムの命令を取り込んで命令の種別、命令
を分岐先が現れるまでレコードに設定し、設定されたレ
コード中に含まれる分岐するまでの命令数およびループ
回数を集計などしてモジュール別カウントテーブルを作
成し、モジュール名、カウンタ値、コンポネント名でソ
ートしてパッキングリストを作成する構成を採用してい
るため、近年の高速化、大規模化、分散化の状況下にお
いても、資源を節約しながら、性能解析能力を維持して
トレースおよび解析能力を確保し、システム性能を自動
チューニングすることができる。これらにより、 (1) トレース量について従来の約1/10に節約で
きる。 (2) 同一ルートを何回走行したかをループ回数か容
易に把握できる。 (3) 操作を簡易にできる。 (4) 時系列の解析および途中経過を表示できる。 (5) 性能評価(命令カウント)とデバック(網羅性
テストなど)を同時に行うことができる。 (6) システム性能を自動チューニングできる。
As described above, according to the present invention,
A count table for each module by fetching the instruction of the program to be measured, setting the instruction type and the instruction in a record until a branch destination appears, and counting the number of instructions and the number of loops included in the set record until branching, etc. And the packing list is created by sorting by module name, counter value, and component name.This saves resources even in recent high-speed, large-scale, and decentralized situations. While maintaining the performance analysis capability, the trace and analysis capability can be secured, and the system performance can be automatically tuned. As a result, (1) the amount of trace can be reduced to about 1/10 of the conventional amount. (2) It is easy to know how many times the vehicle has traveled on the same route as the number of loops. (3) Operation can be simplified. (4) Time series analysis and progress can be displayed. (5) Performance evaluation (instruction count) and debugging (such as coverage test) can be performed simultaneously. (6) System performance can be automatically tuned.

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

【図1】本発明のシステム構成図である。FIG. 1 is a system configuration diagram of the present invention.

【図2】本発明の背景説明図である。FIG. 2 is a background explanatory diagram of the present invention.

【図3】本発明の動作説明フローチャートである。FIG. 3 is a flowchart illustrating the operation of the present invention.

【図4】本発明のトレース説明図である。FIG. 4 is an explanatory diagram of a trace according to the present invention.

【図5】本発明の新トレース処理フローチャートであ
る。
FIG. 5 is a flowchart of a new trace process of the present invention.

【図6】本発明のモジュール別カウント処理フローチャ
ートである。
FIG. 6 is a flowchart of a counting process for each module according to the present invention.

【図7】本発明の採取処理フローチャートである。FIG. 7 is a flowchart of a sampling process according to the present invention.

【図8】本発明の転送長採取説明図である。FIG. 8 is an explanatory diagram of transfer length collection according to the present invention.

【図9】本発明の動作説明フローチャート(トレース終
了処理)である。
FIG. 9 is a flowchart illustrating the operation of the present invention (trace end processing).

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

1:計算機システム 2:トレース機構 3:VM(仮想計算機) 31:メモリ 32:LBS 33:TLB 4:トレースタスク 5:出力バッファ 6:集計バッファ 1: Computer system 2: Tracing mechanism 3: VM (virtual computer) 31: Memory 32: LBS 33: TLB 4: Trace task 5: Output buffer 6: Total buffer

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】被測定プログラムのトレースを行う計算機
システムにおいて、 被測定プログラムの命令を取り込んで当該命令の種別、
命令を分岐先が現れるまでレコードに設定することを繰
り返すトレース手段と、 トレース手段によって設定されたレコード中に含まれる
分岐するまでの命令数およびループ回数を集計する手段
とを備えたことを特徴とする計算機システム。
In a computer system for tracing a program to be measured, an instruction of the program to be measured is fetched, and a type of the instruction,
Trace means for repeating setting an instruction in a record until a branch destination appears; and means for counting the number of instructions and the number of loops until branching included in the record set by the trace means. Computer system.
【請求項2】上記分岐命令のアドレス、分岐するまでの
命令数、およびループ回数を時系列に出力することを特
徴とする請求項1記載の計算機システム。
2. The computer system according to claim 1, wherein the address of the branch instruction, the number of instructions until branching, and the number of loops are output in chronological order.
【請求項3】上記レコードに時系列に順次設定するとき
に次に分岐するアドレスが直前のアドレスと同一のとき
にアドレスの設定を省略することを特徴とする請求項1
あるいは請求項2記載の計算機システム。
3. The method according to claim 1, wherein when sequentially setting the record in time series, the address setting is omitted when the next branch address is the same as the immediately preceding address.
Alternatively, the computer system according to claim 2.
【請求項4】上記被測定プログラムの命令を取り込む際
に、所定の時間毎に取り込むことを特徴とする請求項1
ないし請求項3記載のいずれかの計算機システム。
4. The method according to claim 1, wherein when the instruction of the program to be measured is acquired, the instruction is acquired at predetermined time intervals.
4. The computer system according to claim 3, wherein:
【請求項5】上記被測定プログラムの命令を取り込んだ
ときに当該命令が割り込み命令であった場合に、種別が
割り込み命令および割り込み内容をレコードに設定する
ことを特徴とする請求項1ないし請求項4記載のいずれ
かの計算機システム。
5. The method according to claim 1, wherein when the instruction of the program to be measured is fetched, if the instruction is an interrupt instruction, the type of the interrupt instruction and the content of the interrupt are set in a record. 5. The computer system according to claim 4.
【請求項6】上記命令が割り込み命令であった場合に、
上記レコードに日時を設定することを特徴とする請求項
5記載の計算機システム。
6. When the instruction is an interrupt instruction,
6. The computer system according to claim 5, wherein a date and time are set in said record.
【請求項7】上記被測定プログラムの命令を取り込んだ
ときに当該命令が転送命令であった場合に、転送量をレ
コードに設定することを特徴とする請求項1ないし請求
項6記載のいずれかの計算機システム。
7. The transfer method according to claim 1, wherein when the instruction of the program under measurement is fetched, if the instruction is a transfer instruction, the transfer amount is set in a record. Computer system.
【請求項8】上記分岐するまでの命令数とループ回数の
一方あるいは両者の途中経過をリアルタイムに表示する
ことを特徴とする請求項1ないし請求項7記載のいずれ
かの計算機システム。
8. The computer system according to claim 1, wherein one or both of the number of instructions and the number of loops until the branch is taken is displayed in real time.
【請求項9】上記レコード中に含まれる分岐するまでの
命令数、あるいは当該命令が含まれる名称でソートし、
先頭からページに順次割り当てる手段を備えたことを特
徴とする請求項1ないし請求項8記載の計算機システ
ム。
9. Sorting by the number of instructions included in the record before branching or the name including the instruction,
9. The computer system according to claim 1, further comprising means for sequentially allocating pages from the top.
【請求項10】被測定プログラムの命令を取り込んで当
該命令の種別、命令を分岐先が現れるまでレコードに設
定することを繰り返すトレース手段と、トレース手段に
よって設定されたレコード中に含まれる分岐するまでの
命令数およびループ回数を集計する手段として機能する
プログラムを格納した記憶媒体。
10. A tracing means for fetching an instruction of a program to be measured and repeatedly setting the type of the instruction and the instruction in a record until a branch destination appears, and a tracing means included in the record set by the tracing means. A storage medium storing a program functioning as a means for counting the number of instructions and the number of loops.
JP10006154A 1997-01-20 1998-01-14 Computer system and recording medium Pending JPH10260872A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10006154A JPH10260872A (en) 1997-01-20 1998-01-14 Computer system and recording medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP802897 1997-01-20
JP9-8028 1997-01-20
JP10006154A JPH10260872A (en) 1997-01-20 1998-01-14 Computer system and recording medium

Publications (1)

Publication Number Publication Date
JPH10260872A true JPH10260872A (en) 1998-09-29

Family

ID=26340235

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10006154A Pending JPH10260872A (en) 1997-01-20 1998-01-14 Computer system and recording medium

Country Status (1)

Country Link
JP (1) JPH10260872A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004517390A (en) * 2000-10-24 2004-06-10 ヴィースィーアイエス インコーポレイテッド Analysis virtual machine
JP2018163656A (en) * 2017-03-24 2018-10-18 エイアールエム リミテッド Trace data representation

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004517390A (en) * 2000-10-24 2004-06-10 ヴィースィーアイエス インコーポレイテッド Analysis virtual machine
JP2018163656A (en) * 2017-03-24 2018-10-18 エイアールエム リミテッド Trace data representation

Similar Documents

Publication Publication Date Title
US5615357A (en) System and method for verifying processor performance
US8978017B2 (en) Profiling operating context
US7197586B2 (en) Method and system for recording events of an interrupt using pre-interrupt handler and post-interrupt handler
Sprunt Pentium 4 performance-monitoring features
TWI304548B (en) Method, system, computer readable recording medium recording instructions for counting instruction execution and data accesses for specific types of instructions
US4485440A (en) Central processor utilization monitor
US20020184615A1 (en) System and method for selectively and automatically modifying the source code of a computer program
US20060230391A1 (en) System and method for collecting a plurality of metrics in a single profiling run of computer code
US7178066B2 (en) Apparatus and method for processor performance monitoring
US8819496B2 (en) Apparatus for collecting trace information and processing trace information, and method for collecting and processing trace information
JPH04218845A (en) Application-event collecting method
KR102161192B1 (en) Method and apparatus for data mining from core trace
CN109964207A (en) The tracking based on cache debugged and analyzed for time stroke
CN107003894A (en) Apparatus and method for the parser of hardware transactional internally stored program
US6332117B1 (en) General event stamping scheme
CN107451038B (en) Hardware event acquisition method, processor and computing system
Qian et al. Load balancing on generalized hypercube and mesh multiprocessors with LAL
US20040083088A1 (en) Analysis of the performance of a portion of a data processing system
US20040193395A1 (en) Program analyzer for a cycle accurate simulator
JPH10260872A (en) Computer system and recording medium
CN113672499A (en) Method and system for tracking target variable in executable program
Appello et al. Parallel multithread analysis of extremely large simulation traces
Bussell et al. Instrumenting computer systems and their programs
Curreri et al. Performance analysis with high-level languages for high-performance reconfigurable computing
Noetzel The design of a meta-system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060627

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060824

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061017

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070313