JPH04124737A - Data dependence analyzing system - Google Patents

Data dependence analyzing system

Info

Publication number
JPH04124737A
JPH04124737A JP2245854A JP24585490A JPH04124737A JP H04124737 A JPH04124737 A JP H04124737A JP 2245854 A JP2245854 A JP 2245854A JP 24585490 A JP24585490 A JP 24585490A JP H04124737 A JPH04124737 A JP H04124737A
Authority
JP
Japan
Prior art keywords
program
trace information
serial
trace
data dependence
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
JP2245854A
Other languages
Japanese (ja)
Inventor
Koichi Toyoda
豊田 幸一
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
Original Assignee
NEC Corp
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 filed Critical NEC Corp
Priority to JP2245854A priority Critical patent/JPH04124737A/en
Publication of JPH04124737A publication Critical patent/JPH04124737A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To easily analyze the data dependence by making a data dependence analysis interrupting means collect the trace information at execution of a multi-task program after conversion and compare this trace information with the serial trace information and then interrupting the analysis of the data dependence when the data dependence is detected. CONSTITUTION:A trace information collecting means 7 carries out a serial program 5 after its conversion and obtains the serial trace information 8 based on an inserted trace row. Thus the information 8 is obtained with execution of the program 5. Meanwhile a data dependence analysis interrupting means 9 collects the trace information on a multi-task program 6 based on the inserted trace row when the program 6 is carried out after its conversion. Then the trace information on the program 6 is compared with the collected information 8 for analysis of the presence or absence of the data dependence. That is, it is analyzed whether the emerging sequence of definition/quotation of variables (array elements with array) is equal to the value of the emerging sequence or not. If not, the presence of dependence is confirmed and the execution of analysis of the data dependence is interrupted with addition of a prescribed message.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は電子計算機システムにおけるマルチタスクプロ
グラムのデータ依存性解析方式に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a method for analyzing data dependence of a multitask program in an electronic computer system.

〔従来の技術〕[Conventional technology]

マルチプロセッサシステムは、主に多重プログラミング
環境でのスループントの向上やターンアラウンドタイム
の改善を目的としていることが多いが、単独のプログラ
ムの実行に関しても、プログラムを複数のタスクに分解
・して並列処理させることにより処理速度を向上させる
ためにも有効なシステムである。特に、スーパーコンピ
ュータノように処理速度を重視する場合には、マルチタ
スクによって性能改善を図ることが多い。
Multiprocessor systems are often aimed at improving throughput and turnaround time in multi-programming environments, but they can also be used to decompose a program into multiple tasks and process them in parallel. It is also an effective system for improving processing speed. In particular, when processing speed is important, such as in supercomputers, performance is often improved through multitasking.

このようなことから、シングルプロセッサシステムで動
作していたシリアルプログラムをマルチプロセッサシス
テムで実行させる場合には、マルチプロセッサをを効に
利用して高速に実行できる構造のマルチタスクプログラ
ムに書き換えてから実行が行われる。
For this reason, if you want to run a serial program that used to run on a single processor system on a multiprocessor system, you need to rewrite it to a multitasking program with a structure that makes effective use of the multiprocessor and can be executed at high speed. will be held.

ところで、シリアルプログラムからマルチタスクプログ
ラムへの書き換えにおいて注意すべきことは、タスク間
でデータの依存性がある場合、シリアルプログラムのと
きと比べてデータの定義・引用の順序が入れ替わること
があるため、誤動作を起こして正しい結果が得られない
場合があることである。
By the way, when rewriting a serial program to a multitask program, you should be careful that if there is a data dependency between tasks, the order of data definitions and citations may be reversed compared to the serial program. There are cases where malfunction occurs and correct results are not obtained.

そのため、誤動作を事前に回避するため、デバッグの工
程の一部としてマルチタスクプログラムの依存性の解析
を行うのが一般的であり、従来は主として次の2通りの
方法が採られていた。
Therefore, in order to prevent malfunctions in advance, it is common to analyze the dependencies of multitask programs as part of the debugging process. Conventionally, the following two methods have been mainly adopted.

■ソースプログラムを静的に解析する方法■時系列の実
行トレースをタスク毎に採って調べる方法 〔発明が解決しようとする課題] 上述したように従来は依存性解析において主として2通
りの方法が採られていたが、それぞれ次のような欠点が
あった。
■Method of statically analyzing source programs ■Method of taking and examining time-series execution traces for each task [Problem to be solved by the invention] As mentioned above, two methods have been mainly adopted in dependency analysis in the past. However, each had the following drawbacks.

先ず、■のソースプログラムを静的に解析する方法にあ
っては、配列の要素毎にその定義・引用関係を全て調べ
尽くすのは難しい場合が多く、特に手続き呼び出しを含
めた制御フローが複雑な場合に依存性を解析するのは非
常に困難となる。
First, with the method of statically analyzing a source program in (■), it is often difficult to thoroughly examine all definitions and citation relationships for each element of an array, especially when the control flow including procedure calls is complex. It becomes very difficult to analyze dependencies in these cases.

一方、■の時系列の実行トレースをタスク毎ムニ採って
調べる方法にあっては、トレースすべき事象を絞るのが
難しく、多くの事象をトレースするとトレースデータの
量が膨大となり、依存性解析のための本質的なトレース
データをその中から抽出するのが困難となる。
On the other hand, with the method (2) of examining time-series execution traces for each task, it is difficult to narrow down the events to be traced, and tracing many events results in a huge amount of trace data, making it difficult to analyze dependencies. It becomes difficult to extract the essential trace data from there.

このように、どちらの方法を用いても依存性解析を行う
のは容易ではなかった。
As described above, it is not easy to perform dependency analysis using either method.

本発明は上記の点に鑑み提案されたものであり、その目
的とするところは、容易に依存性解析が行えるデータ依
存性解析方式を提供することにある。
The present invention has been proposed in view of the above points, and its purpose is to provide a data dependency analysis method that allows easy dependency analysis.

〔課題を解決するための手段] 本発明は上記の目的を達成するため、シリアルプログラ
ムおよびそれと等価なマルチタスクプログラムを入力し
、タスク間共有変数指定情報により指定された変数につ
いてのトレース情報を採取するトレース行を挿入するプ
ログラム変換手段と、変換後シリアルプログラムを実行
させてシリアルトレース情報を採取するトレース情報採
取手段と、 変換後マルチタスクプログラムの実行に際してトレース
情報を採取し、前記シリアルトレース情報と比較してデ
ータ依存性を検出した際に実行を中断するデータ依存性
解析中断手段とを備えるようにしている。
[Means for Solving the Problems] In order to achieve the above object, the present invention inputs a serial program and a multitask program equivalent thereto, and collects trace information about variables specified by inter-task shared variable specification information. a program conversion means for inserting a trace line to be executed; a trace information collection means for collecting serial trace information by executing a converted serial program; A data dependency analysis interrupting means for interrupting execution when data dependency is detected by comparison is provided.

〔作用〕[Effect]

本発明のデータ依存性解析方式にあっては、プログラム
変換手段がシリアルプログラムおよびそれと等価なマル
チタスクプログラムを入力し、タスク間共存変数指定情
報により指定された変数についてのトレース情報を採取
するトレース行を挿入し、トレース情報採取手段が変換
後シリアルプログラムを実行させてシリアルトレース情
報を採取し、データ依存性解析中断手段が変換後マルチ
タスクプログラムの実行に際してトレース情報を採取し
、前記シリアルトレース情報と比較してデータ依存性を
検出した際に実行を中断する。
In the data dependency analysis method of the present invention, the program conversion means inputs a serial program and an equivalent multitask program, and performs a trace line for collecting trace information about variables specified by inter-task coexistence variable specification information. is inserted, the trace information collection means executes the converted serial program and collects serial trace information, and the data dependency analysis interrupting means collects trace information when executing the converted multitask program, and collects the serial trace information and the serial trace information. Interrupts execution when data dependencies are detected during comparison.

[実施例] 以下、本発明の実施例につき図面を参照して説明する。[Example] Embodiments of the present invention will be described below with reference to the drawings.

第1図は本発明のデータ依存性解析方式の一実施例を示
す構成図である。
FIG. 1 is a block diagram showing an embodiment of the data dependency analysis method of the present invention.

第1図において、本実施例は、機能部分として、プログ
ラム変換手段4と、トレース情報採取手段7と、データ
依存性解析中断手段9とを備えている。各手段の機能お
よび他の部分については以下の動作を通して説明するこ
ととする。
In FIG. 1, this embodiment includes a program converting means 4, a trace information collecting means 7, and a data dependency analysis interrupting means 9 as functional parts. The functions and other parts of each means will be explained through the following operations.

オペレータはシリアルプログラムlおよびマルチタスク
プログラム2を用意してプログラム変換手段4に与える
。ここで、シリアルプログラム1はシングルプロセッサ
システムで実行されていたプログラムであり、マルチタ
スクプログラム2はプログラマにより適当なツールを用
いてシリアルプログラム1から書き換えられた等価なマ
ルチプロセッサシステム用のプログラムである。
An operator prepares a serial program 1 and a multitask program 2 and supplies them to the program conversion means 4. Here, serial program 1 is a program that was executed in a single processor system, and multitask program 2 is an equivalent program for a multiprocessor system that has been rewritten from serial program 1 by a programmer using an appropriate tool.

一方、オペレータは所定の入力装置からタスク間共有変
数指定情報3をプログラム変換手段4に与える。第2図
はタスク間共有変数指定情報3の例を示したものであり
、この例では共通ブロックC0M中の変数(配列)Aに
ついて依存性解析を行うことを指定している。
On the other hand, the operator provides the inter-task shared variable designation information 3 to the program conversion means 4 from a predetermined input device. FIG. 2 shows an example of inter-task shared variable specification information 3, which specifies that dependency analysis is to be performed on variable (array) A in common block C0M.

プログラム変換手段4はシリアルプログラム1およびマ
ルチタスクプログラム2の両者を入力し、並列実行区間
の認識等を行った上で、タスク間共有変数指定情報3で
指定された、依存性解析を行うべき変数の参照行にトレ
ース行(トレース情報の採取を行う命令)を挿入して、
変換後シリアルプログラム5と変換後マルチタスクプロ
グラム6とを出力する。なお、採取するトレース情報と
しては、次のものが適当である。
The program conversion means 4 inputs both the serial program 1 and the multitask program 2, recognizes parallel execution sections, etc., and then converts the variables to be subjected to dependency analysis specified by the inter-task shared variable specification information 3. Insert a trace line (instruction to collect trace information) in the reference line of
A converted serial program 5 and a converted multitask program 6 are output. Note that the following trace information is appropriate to collect.

・変数が配列である場合は配列要素番号・参照箇所(プ
ログラム単位名1文番号)・参照形式(定II加EF”
、引用”REF”)・変数の値 ただし、参照箇所の文番号について、元のプログラム中
に文番号が無い場合にはプログラム変換手段4が適当な
価を付与する。
・If the variable is an array, the array element number ・Reference location (program unit name 1 statement number) ・Reference format (defined II + EF)
, quotation "REF")・Variable value However, if there is no statement number in the original program, the program converting means 4 assigns an appropriate value to the statement number of the reference location.

以下、上記のプログラム変換について、具体例を用いて
説明する。
The above program conversion will be explained below using a specific example.

第3図はFORTRAN言語によるシリアルプログラム
1の例であり、第4図はそれと等価なマルチタスクプロ
グラム2の例である。なお、この例のマルチタスクプロ
グラム2は2個のプロセンサで並列処理されることを前
提として作成されている。すなわち、第3図のシリアル
プログラム1の各Do小ループ最外周のDo変数の変化
範囲を2分割し、それぞれが並列処理されるように2個
のタスクを構成しである。
FIG. 3 is an example of a serial program 1 written in the FORTRAN language, and FIG. 4 is an example of an equivalent multitask program 2. Note that the multitask program 2 in this example is created on the assumption that parallel processing will be performed by two processors. That is, the change range of the Do variable at the outermost circumference of each Do small loop in the serial program 1 in FIG. 3 is divided into two, and two tasks are configured so that each is processed in parallel.

今、タスク間共有変数指定情報3は第2図に既に示した
ように変数Aについて指定が行われているものとすると
、プログラム変換手段4は第3図のシリアルプログラム
1および第4図のマルチタスクプログラム2を入力し、
変数Aの参照行の次にトレース行を挿入した、第5図に
示すような変換後シリアルプログラム5および第6図に
示すような変換後マルチタスクプログラム6を出力する
Now, assuming that the inter-task shared variable specification information 3 specifies the variable A as already shown in FIG. Enter task program 2,
A converted serial program 5 as shown in FIG. 5 and a converted multitask program 6 as shown in FIG. 6, in which a trace line is inserted next to the reference line of variable A, are output.

すなわち、プログラム変換手段4は、変数Aについての
記述が出現すると、その参照形式が定義であるか引用で
あるかを判断すると共に、文番号が無ければ適当な文番
号を付与し、Do変数の値。
That is, when a description of variable A appears, the program conversion means 4 determines whether its reference format is a definition or a quotation, and if there is no statement number, it assigns an appropriate statement number, and converts the Do variable. value.

参照形式、プログラム単位名9文番号、変数Aの値を引
数としてトレース情報採取のためのサブルーチンTRA
CE、DEPENDを呼び出すCALL文を挿入する。
Subroutine TRA for collecting trace information using reference format, program unit name 9 statement number, and value of variable A as arguments
Insert a CALL statement that calls CE and DEPEND.

なお、マルチタスクプログラム2については、プログラ
ム単位名を確定するために、予め並列実行区間の認識が
行われる。この認識は、第4図においては、並列処理の
開始部分を示すCALL  FORKおよび並列処理の
終了部分を示すCALL  JOINと、それらの引数
で指定されたタスクIDとから判断が可能であり、区間
P1と区間P2とが並列処理されることが認識される。
Note that for the multitask program 2, parallel execution sections are recognized in advance in order to determine the program unit name. In FIG. 4, this recognition can be determined from CALL FORK indicating the start part of parallel processing, CALL JOIN indicating the end part of parallel processing, and the task ID specified by those arguments. It is recognized that and section P2 are processed in parallel.

次いで、第1図において、トレース情報採取手段7は変
換後シリアルプログラム5を実行させ、挿入されたトレ
ース行に基づいてシリアルトレース情報8を得る。第5
図の変換後シリアルプログラム5を実行することにより
、第7Tj!Jに示すような内容のシリアルトレース情
報8が得られる。なお、第7図において、「変位」は配
列要素番号である。
Next, in FIG. 1, the trace information collecting means 7 executes the converted serial program 5 and obtains serial trace information 8 based on the inserted trace line. Fifth
By executing the serial program 5 after conversion shown in the figure, the seventh Tj! Serial trace information 8 having the content shown in J is obtained. In addition, in FIG. 7, "displacement" is an array element number.

一方、第1図において、データ依存性解析中断手段9は
、変換後マルチタスクプログラム6の実行に際して、挿
入されたトレース行に基づいて変換後マルチタスクプロ
グラム6のトレース情報を採取し、既に採取されている
シリアルトレース情報8と比較してデータ依存性の有無
を解析する。
On the other hand, in FIG. 1, the data dependency analysis interrupting means 9 collects trace information of the converted multi-task program 6 based on the inserted trace line when executing the converted multi-task program 6, and collects trace information of the converted multi-task program 6 based on the inserted trace line. The presence or absence of data dependence is analyzed by comparing it with the serial trace information 8 that is included.

すなわち、変数(配列の場合は配列要素毎)の定義・引
用の出現順序および値が同しであるが否かを解析し、差
異が生した場合には依存性があるとして所定のメツセー
ジを伴って実行を中断する。
In other words, it analyzes whether the order of appearance and values of definitions and citations of variables (in the case of arrays, each array element) are the same, and if a difference occurs, it is determined that there is a dependency and a predetermined message is sent. to interrupt execution.

第8図は第6図の変換後マルチタスクプログラム6を実
行する際に得られるトレース情報の例を示したものであ
るが、第7図のシリアルトレース情報8によれば配列要
素A(30)は文番号「90001Jで値が「50」に
定義された後に文番号「20」で引用されているが、第
8図のトレース情報では配列要素A(30)が定義され
る前に文番号「20」において参照されてしまっており
、その値も「0」となっていて正しいものとは異なって
いる。従って、この場合はデータの依存性が有ると判断
され、この時点で実行が中断される。
FIG. 8 shows an example of trace information obtained when executing the converted multitask program 6 of FIG. 6. According to the serial trace information 8 of FIG. 7, array element A (30) is quoted with statement number "20" after it is defined with statement number "90001J" and the value is "50", but in the trace information in Figure 8, statement number "20" is defined before array element A (30) is defined. 20", and its value is also "0", which is different from the correct one. Therefore, in this case, it is determined that there is data dependency, and execution is interrupted at this point.

すなわち、第9図は第4図のマルチタスクプログラムを
再び示したものであるが、5LIBROLITINE 
 SUBのLINE8における変数Aの引用と、PRO
GRAM  MAINのLINE33における変数Aの
定義とが依存性を有していることになる。
That is, FIG. 9 shows the multitasking program of FIG. 4 again, but with 5LIBROLITINE
Quotation of variable A in LINE8 of SUB and PRO
This means that there is a dependency with the definition of variable A in LINE 33 of GRAM MAIN.

また、第10図は依存性検出時に出力されるメツセージ
の例を示したものである。
Further, FIG. 10 shows an example of a message output when dependency is detected.

なお、上記の実施例ではデバッガについては触れなかっ
たが、デバッガの下で変換後マルチタスクプログラム6
を実行させ、データ依存性が検出されて実行が中断した
段階でデバッグに移行できるようにして、効率良くデバ
ッグ処理を行うことも可能である。
Although the debugger was not mentioned in the above example, the multitasking program 6 after conversion is run under the debugger.
It is also possible to perform the debugging process efficiently by allowing the debugging process to be started when a data dependency is detected and the execution is interrupted.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明のデータ依存性解析方式に
あっては、 (1)動的な解析を基本としているため、制御フローが
複雑な場合であっても漏れなく依存性をサーチすること
ができる。
As explained above, the data dependency analysis method of the present invention has the following features: (1) Since it is based on dynamic analysis, it is possible to search for dependencies without omission even when the control flow is complex. I can do it.

(2)タスク間共有変数を指定するだけで、トレース結
果から依存性が検出された場合にはその旨が判明するた
め、トレースすべき事象を絞ることも、膨大なトレース
情報をもと!:検討する必要もなくなり、デバッグの工
数を大幅に削減することができる。
(2) Just by specifying inter-task shared variables, if a dependency is detected from the trace results, it will be known, so you can narrow down the events to be traced based on the huge amount of trace information! : There is no need to consider it, and the number of debugging steps can be significantly reduced.

等の効果がある。There are other effects.

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

第1図は本発明のデータ依存性解析方式の一実施例を示
す構成図、 第2図はタスク間共有変数指定情報の例を示す図、 第3図はシリアルプログラムの例を示す図、第4図はマ
ルチタスクプログラムの例を示す図、第5図は変換後シ
リアルプログラムの例を示す図、 第6図は変換後マルチタスクプログラムの例を示す図、 第7図はシリアルトレース情報の例を示す図、第8図は
変換後マルチタスクプログラムのトレース情報の例を示
す図、 第9図はタスク間の依存関係を示す図および、第1O図
は依存性検出の際に出力されるメツセージの例を示す図
である。 図において、 l・・・・・・シリアルプログラム 2・・・・・・マルチタスクプログラム3・・・:・・
タスク間共有変数指定情報4・・・・・・プルグラム変
換手段 5・・・・・・変換後シリアルプログラム6・・・・・
・変換後マルチタスクプログラム7・・・・・・トレー
ス情報採取手段 8・・・・・・シリアルトレース情報 9・・・・・・データ依存性解析中断手段実施例の構成
図 第 図 タスク間共有変数指定情報の例を示す図第 図 1・へ− PROGRAM MAIN シリアルプログラムの例を示す図 第 図 2、。 PROGRAM MAIN COMMON /COM/ N INITA、  INITB UNロ マルチタスクプログラムの例を示す因 第 図 PROGRA門MAIN 変換後シリアルプログラムの例を示す同第 図 ゝ\ PROGRAM MAIN COMMON /COM/ N ^ INITA INITB ND
FIG. 1 is a block diagram showing an example of the data dependency analysis method of the present invention, FIG. 2 is a diagram showing an example of inter-task shared variable specification information, FIG. 3 is a diagram showing an example of a serial program, Figure 4 shows an example of a multitasking program, Figure 5 shows an example of a serial program after conversion, Figure 6 shows an example of a multitasking program after conversion, and Figure 7 shows an example of serial trace information. Figure 8 is a diagram showing an example of trace information of a multitask program after conversion, Figure 9 is a diagram showing dependencies between tasks, and Figure 1O is a message output when dependency is detected. FIG. In the diagram, l... Serial program 2... Multitask program 3...:...
Inter-task shared variable specification information 4...Program conversion means 5...Conversion serial program 6...
・Multitask program after conversion 7... Trace information collection means 8... Serial trace information 9... Block diagram of an embodiment of data dependency analysis interrupting means Diagram: Sharing between tasks FIG. 1 is a diagram showing an example of variable specification information; FIG. 2 is a diagram showing an example of a PROGRAM MAIN serial program. PROGRAM MAIN COMMON /COM/ N INITA, INITB UNRomatic diagram showing an example of a multitasking program PROGRAM MAIN Figure showing an example of a serial program after conversion NITBND

Claims (2)

【特許請求の範囲】[Claims] (1)シリアルプログラムおよびそれと等価なマルチタ
スクプログラムを入力し、タスク間共有変数指定情報に
より指定された変数についてのトレース情報を採取する
トレース行を挿入するプログラム変換手段と、 変換後シリアルプログラムを実行させてシリアルトレー
ス情報を採取するトレース情報採取手段と、 変換後マルチタスクプログラムの実行に際してトレース
情報を採取し、前記シリアルトレース情報と比較してデ
ータ依存性を検出した際に実行を中断するデータ依存性
解析中断手段とを備えたことを特徴とするデータ依存性
解析方式。
(1) A program conversion means that inputs a serial program and an equivalent multitask program and inserts a trace line for collecting trace information about variables specified by inter-task shared variable specification information, and executes the serial program after conversion. trace information collection means for collecting serial trace information when the multitasking program is executed after conversion; 1. A data dependency analysis method characterized by comprising a means for interrupting gender analysis.
(2)採取するトレース情報は、配列については配列要
素番号と、参照箇所と、参照形式と、変数の値としたこ
とを特徴とする請求項1記載のデータ依存性解析方式。
(2) The data dependency analysis method according to claim 1, wherein the trace information to be collected is an array element number, a reference location, a reference format, and a value of a variable for an array.
JP2245854A 1990-09-14 1990-09-14 Data dependence analyzing system Pending JPH04124737A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2245854A JPH04124737A (en) 1990-09-14 1990-09-14 Data dependence analyzing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2245854A JPH04124737A (en) 1990-09-14 1990-09-14 Data dependence analyzing system

Publications (1)

Publication Number Publication Date
JPH04124737A true JPH04124737A (en) 1992-04-24

Family

ID=17139830

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2245854A Pending JPH04124737A (en) 1990-09-14 1990-09-14 Data dependence analyzing system

Country Status (1)

Country Link
JP (1) JPH04124737A (en)

Similar Documents

Publication Publication Date Title
Korel et al. Dynamic slicing of computer programs
EP0406602B1 (en) Method and apparatus for debugging parallel programs by serialization
US6658649B1 (en) Method, apparatus and article of manufacture for debugging a user defined region of code
JP3480973B2 (en) Behavior analysis device for parallel processing system
US20020184615A1 (en) System and method for selectively and automatically modifying the source code of a computer program
Ball Predicting the effects of optimization on a procedure body
Kästner et al. Timeweaver: A tool for hybrid worst-case execution time analysis
Krinke Mining control flow graphs for crosscutting concerns
Lee et al. Performing data flow analysis in parallel
JPH04124737A (en) Data dependence analyzing system
JP2626131B2 (en) Multitask program debugging method
JPH08123699A (en) Parallel processing method, parallel processing system, and conversion tool for program for parallel processing
KR100433549B1 (en) Method and apparatus for analyzing software
JP2738360B2 (en) Multitask program debugging method and debugging system
Ramamoorthy et al. Recognition and representation of parallel processable streams in computer programs-II (Task/process Parallelism)
Ludwig et al. OCM—an OMIS compliant monitoring system
JPS63289654A (en) Program branching instruction monitoring system
JPH0357036A (en) Event information gathering system for multiprocessor data processing system
JP2623554B2 (en) Dynamic Vector Diagnosis Method for Vector Computer
Gilles et al. A guided tour through a window oriented debugging environment for embedded real time Ada systems
Wang et al. CAT: Context Aware Tracing for Rust Asynchronous Programs
JPH05313918A (en) Analysis data collecting system in ending abnormality of application software
JPH05334119A (en) Method for debugging program
JPH0750445B2 (en) Program debugging method
Roberts et al. A portable assembler reverse engineering environment (PARE)