JPH0581221A - Device for supporting parallel program development - Google Patents

Device for supporting parallel program development

Info

Publication number
JPH0581221A
JPH0581221A JP3242133A JP24213391A JPH0581221A JP H0581221 A JPH0581221 A JP H0581221A JP 3242133 A JP3242133 A JP 3242133A JP 24213391 A JP24213391 A JP 24213391A JP H0581221 A JPH0581221 A JP H0581221A
Authority
JP
Japan
Prior art keywords
procedure
information
parallel program
processor
processors
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.)
Withdrawn
Application number
JP3242133A
Other languages
Japanese (ja)
Inventor
Hideyuki Kubo
秀行 久保
Seiichi Aikawa
聖一 相川
Mayumi Kamiko
真弓 神子
Fumiko Matsuzawa
史子 松沢
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 JP3242133A priority Critical patent/JPH0581221A/en
Publication of JPH0581221A publication Critical patent/JPH0581221A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE:To support program developing work such as load distribution algorithm performance evaluation and debugging on parallel machines so as to easily execute it by collecting procedure information executed on the parallel machines and displaying the collected information correspondingly to respective processors so as to easily identify it. CONSTITUTION:This supporting device is provided with plural processors for operating parallel programs and an operation extracting part 2 for extracting and collecting procedure information 71 and operation information 8 for the parallel programs driven by these processors and constituted so as to display a procedure corresponding to each processor based upon both information 7, 8 collected in each processor through a series of processing by the extracting part 2.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、並列プログラムの実行
時のプロシジャー情報を収集して各プロセッサに対応づ
けて表示する並列プログラム開発支援装置であって、複
数のプロセッサから構成される並列計算機上でのプログ
ラムのテストおよび評価・解析を支援する並列プログラ
ム開発支援装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a parallel program development supporting apparatus for collecting procedure information at the time of execution of a parallel program and displaying it in association with each processor. The present invention relates to a parallel program development support device that supports test, evaluation, and analysis of programs on the Internet.

【0002】一般に、並列計算機上のプログラム開発
は、計算負荷の分散アルゴリズムの設計、プログラミン
グ、テスト・評価・デバッグといった過程で行われてい
く。計算負荷の分散アルゴリズムの設計は、並列計算機
上でプログラムを効率よく実行させることを目的とし、
プロセッサ間の通信量を抑えながら計算負荷を分散する
ことが肝要となってくる。このために自動的に計算負荷
を各プロセッサに割り当てるような種々の動的負荷分散
方式が考えられているが、これらの方式だけで全てのプ
ログラムを効率良く実行するまでに至っていない。
Generally, program development on a parallel computer is carried out in the process of designing, programming, testing / evaluating / debugging a calculation load distribution algorithm. The design of distributed algorithm of calculation load is aimed at executing the program efficiently on the parallel computer.
It is important to distribute the calculation load while suppressing the communication volume between processors. For this reason, various dynamic load balancing schemes have been considered in which a computing load is automatically assigned to each processor, but these schemes have not yet been able to efficiently execute all programs.

【0003】また、テスト・評価・デバッグの際も、逐
次プログラムと違って単に正常な実行が行われないもの
に対するデバッグばかりでなく、計算速度の飛躍的な向
上のための評価・デバッグを行わなければならないが、
これらを支援するプログラミング環境が確立されるまで
には至っていない。従って、プログラマが思考錯誤を繰
り返しながら負荷分散アルゴリズムの設計および評価を
行っているのが現状である。このため、プログラマの負
荷を軽くするために、これら一連の作業を支援する必要
がある。
Also, in testing, evaluation, and debugging, not only debugging that is not normally executed unlike sequential programs, but evaluation and debugging for dramatically improving calculation speed must be performed. I have to
The programming environment to support these has not been established. Therefore, under the present circumstances, programmers are designing and evaluating load balancing algorithms while repeating thought and error. Therefore, it is necessary to support these series of operations in order to reduce the load on the programmer.

【0004】[0004]

【従来の技術】プログラムを並列計算機上で実行させる
ことは、一台のプロセッサで構成する計算機に比べて、
台数分に比例した計算速度の向上が期待される。このよ
うなプロセッサの台数に伴う計算速度の向上を実現する
ためには、プログラムを複数のプロセッサ上で効率よく
同時に実行させなければならない。このためには、プロ
グラムの計算問題を部分問題に分割する方法と、分割し
た部分問題を各プロセッサへ割つ付ける方法について検
討する必要がある。分割方法の検討は、計算負荷を分散
させることによってプロセッサ間通信が増大しないよう
に、ある程度独立に計算可能な単位に問題を分割するこ
とが重要である。また、割つ付ける方法の検討では、あ
る特定のプロセッサに計算負荷が集中しないように、負
荷を均等に各プロセッサに割つ付けることが重要であ
る。これらの検討結果から、負荷分散アルゴリズムを実
現する際には、各プロセッサ上でのゴールの振舞いを予
め予測しながらプログラムを作成する必要がある。しか
し、現状では並列に動作するプログラムの性能を予め予
測することが困難なため、プログラマが思考錯誤を繰り
返しながら負荷分散アルゴリズムの設計を行っている。
2. Description of the Related Art Executing a program on a parallel computer is more difficult than executing a computer with a single processor.
It is expected that the calculation speed will increase in proportion to the number of vehicles. In order to realize the improvement of the calculation speed according to the number of processors, it is necessary to efficiently execute a program on a plurality of processors at the same time. For this purpose, it is necessary to consider a method of dividing the calculation problem of the program into sub-problems and a method of allocating the divided sub-problems to each processor. In consideration of the partitioning method, it is important to partition the problem into units that can be calculated independently to some extent so that interprocessor communication does not increase by distributing the calculation load. Moreover, in the study of the allocation method, it is important to allocate the load evenly to each processor so that the calculation load is not concentrated on a specific processor. From these examination results, it is necessary to create the program while predicting the behavior of the goal on each processor in advance when implementing the load balancing algorithm. However, at present, it is difficult to predict the performance of programs running in parallel, so programmers are designing load balancing algorithms by repeating thought and error.

【0005】[0005]

【発明が解決しようとする課題】従って、プログラムを
並列マシン上で、効率よく実行させるための負荷分散ア
ルゴリズムの設計や、正しく動作させるためのデバッグ
は、プログラマが思考錯誤を繰り返し行わざるを得な
く、効率のよい並列プログラムの作成を支援するツール
が不十分であるという問題があった。
Therefore, the programmer must repeat thought and error in designing a load balancing algorithm for efficiently executing a program on a parallel machine and in debugging for a correct operation. , There was a problem that there were insufficient tools to support efficient parallel program creation.

【0006】本発明は、並列マシン上で実行させたとき
のプロシジャー情報を収集して各プロセッサに対応づけ
て判り易く表示し、並列マシン上での負荷分散アルゴリ
ズムの性能評価やデバッグなどのプログラム開発作業を
支援して行いやすくすることを目的としている。
The present invention collects procedure information when it is executed on a parallel machine and displays it in association with each processor so that it can be easily understood, and program development such as performance evaluation and debugging of a load balancing algorithm on the parallel machine. The purpose is to support the work and make it easier.

【0007】[0007]

【課題を解決するための手段】図1は、本発明の原理構
成図を示す。図1において、複数のプロセッサは、並列
プログラムを動作させるものである。
FIG. 1 is a block diagram showing the principle of the present invention. In FIG. 1, a plurality of processors operate parallel programs.

【0008】動作抽出部2は、複数のプロセッサ上で動
作させた並列プログラムのプロシジャー情報71および
動作情報8を抽出して収集するものである。プロシジャ
ー管理テーブル7は、プロシジャー毎の実行回数を管理
したり、プロシジャーの表示/非表示を管理するフラグ
を設けたりなどするものである。
The operation extracting section 2 extracts and collects procedure information 71 and operation information 8 of a parallel program operated on a plurality of processors. The procedure management table 7 manages the number of executions of each procedure and provides a flag for managing display / non-display of the procedure.

【0009】対応テーブル72は、動作抽出部2によっ
て抽出したプロシジャー情報71および動作情報8のう
ちの、予め指定されたプロシジャーと変数(例えば共有
変数)との対応を登録するものである。
The correspondence table 72 is for registering the correspondence between the procedure and the variable (for example, shared variable) designated in advance in the procedure information 71 and the movement information 8 extracted by the movement extracting section 2.

【0010】[0010]

【作用】本発明は、図1に示すように、並列プログラム
を複数のプロセッサ上で動作させ、動作抽出部2が一連
の処理について収集したプロセッサ毎のプロシジャー情
報71および動作情報8をもとに、各プロセッサに対応
づけてプロシジャーを表示させるようにしている。
As shown in FIG. 1, the present invention operates a parallel program on a plurality of processors, and based on the procedure information 71 and the operation information 8 for each processor collected by the operation extraction unit 2 for a series of processes. , The procedure is displayed in association with each processor.

【0011】また、並列プログラムを複数のプロセッサ
上で動作させ、動作抽出部2が一連の処理についてリア
ルタイムに収集したプロセッサ毎のプロシジャー情報7
1および動作情報8をもとに、各プロセッサに対応づけ
てプロシジャーをリアルタイムに表示させるようにして
いる。
Also, the parallel program is run on a plurality of processors, and the procedure extracting unit 2 collects the procedure information 7 for each processor in real time for a series of processes.
Based on 1 and operation information 8, the procedure is displayed in real time in association with each processor.

【0012】また、並列プログラムを複数のプロセッサ
上で動作させ、動作抽出部2が一連の処理について収集
したプロシジャー情報71および動作情報8を記憶して
おき、これらプロシジャー情報71および動作情報8を
もとに順次時間の経過(あるいは逆の方向)に従って動
画として表示するようにしている。
Further, the parallel program is operated on a plurality of processors, the procedure information 71 and the operation information 8 collected by the operation extraction unit 2 for a series of processes are stored, and the procedure information 71 and the operation information 8 are also stored. In addition, the moving images are sequentially displayed as time passes (or in the opposite direction).

【0013】また、並列プログラムを複数のプロセッサ
上で動作させ、動作抽出部2が一連の処理について収集
したプロシジャー情報71および動作情報8をもとにプ
ロシジャー毎の実行回数をプロシジャー管理テーブル7
に登録し、このプロシジャー管理テーブル7で管理され
ている実行回数に対応する色でプロシジャーをプロセッ
サ毎に表示するようにしている。
In addition, the parallel program is operated on a plurality of processors, and the number of executions of each procedure is calculated based on the procedure information 71 and the operation information 8 collected by the operation extraction unit 2 for a series of processes, and the procedure management table 7
The procedure is displayed for each processor in a color corresponding to the number of executions managed by the procedure management table 7.

【0014】また、並列プログラムを複数のプロセッサ
上で動作させ、動作抽出部2が一連の処理について収集
したプロシジャー情報71および動作情報8をもとに予
め指定されたプロシジャーと変数(共有変数)との対応
を対応テーブル72に登録し、この対応テーブル72に
登録された指定されたプロシジャーの変数と同一の変数
が登録されているプロシジャーを各プロセッサに対応づ
けて強調表示するようにしている。
Further, a parallel program is operated on a plurality of processors, and a procedure and a variable (shared variable) designated in advance based on the procedure information 71 and the operation information 8 collected by the operation extracting unit 2 for a series of processes are stored. Is registered in the correspondence table 72, and the procedure in which the same variable as the variable of the designated procedure registered in the correspondence table 72 is registered is highlighted in association with each processor.

【0015】また、並列プログラムを複数のプロセッサ
上で動作させ、動作抽出部2が一連の処理について収集
したプロシジャー情報71および動作情報8をもとにプ
ロシジャの表示/非表示のフラグを設定し、このプロシ
ジャー管理テーブル7のフラグの設定されたプロシジャ
ーのみを各プロセッサに対応づけて表示するようにして
いる。
Further, the parallel program is operated on a plurality of processors, and the procedure display / non-display flag is set based on the procedure information 71 and the operation information 8 collected by the operation extraction unit 2 for a series of processing. Only the procedure with the flag set in the procedure management table 7 is displayed in association with each processor.

【0016】従って、並列マシン上で実行させたときの
プロシジャー情報71および動作情報8収集して各プロ
セッサに対応づけて判り易くプロセッサ構成図として表
示することにより、並列マシン上での負荷分散アルゴリ
ズムの性能評価やデバッグなどのプログラム開発作業を
支援して行いやすくすることが可能となる。
Therefore, by collecting the procedure information 71 and the operation information 8 when they are executed on the parallel machine and displaying them as a processor configuration diagram in association with each processor in an easy-to-understand manner, the load balancing algorithm on the parallel machine can be displayed. It becomes possible to support the program development work such as performance evaluation and debugging, and to make it easier.

【0017】[0017]

【実施例】次に、図1から図10を用いて本発明の実施
例の構成および動作を順次詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the construction and operation of an embodiment of the present invention will be described in detail with reference to FIGS.

【0018】図1は、本発明の原理構成図(その1)を
示す。図1において、入力装置1は、並列プログラムを
動作抽出部2のPE#0からPE#3のプロセッサにロ
ードしたり、各種コマンドを投入して指示したりなど、
各種入力を行うものである。
FIG. 1 shows a principle configuration diagram (1) of the present invention. In FIG. 1, the input device 1 loads a parallel program into the processor of PE # 0 to PE # 3 of the operation extraction unit 2, inputs various commands, and gives instructions.
Various inputs are performed.

【0019】動作抽出部2は、並列プログラムを各PE
#0からPE#3にロードして実行させ、そのときのプ
ロシジャー情報71および動作情報8を収集するもので
あって、PE#0からPE#3、および抽出/収集部2
1などから構成されるものである。
The motion extraction unit 2 executes a parallel program for each PE.
The procedure information 71 and the operation information 8 at that time are loaded from # 0 to PE # 3 and executed, and the PE # 0 to PE # 3 and the extraction / collection unit 2 are collected.
1 and the like.

【0020】PE#0からPE#3は、プロセッサであ
って、並列プログラムをロードして並列にそれぞれ実行
するものである。抽出/収集部21は、PE#0からP
E#3によって並列プログラムを並行してそれぞれ実行
したときのプロシジャー情報71および動作情報8を抽
出して収集するものである。ここで、プロシジャーは、
関数、サブルーチンや、更にプログラムの行単位のある
処理を行うものであって、これらにそれぞれプロシジャ
ーIDを付与する。プロシジャー情報71は、プロシジ
ャー名、引数個数などを収集し、このうち同一のプロシ
ジャーIDを持つものを実行回数として計数してディス
ク装置上のデータファイル3に保存する。また、プロシ
ジャー情報71と一緒にプロシジャーIDに対応づけて
そのときのプロシジャーの呼び出しの系列やプロセッサ
番号などを動作情報8として収集してデータファイル3
に保存する。
PE # 0 to PE # 3 are processors, which load a parallel program and execute the programs in parallel. The extraction / collection unit 21 uses PE # 0 to P #
The procedure information 71 and the operation information 8 when the parallel programs are executed in parallel by E # 3 are extracted and collected. Where the procedure is
A function, a subroutine, or a process with a line unit of a program is performed, and a procedure ID is assigned to each of them. The procedure information 71 collects the procedure name, the number of arguments, etc., counts the number having the same procedure ID as the number of executions, and stores it in the data file 3 on the disk device. In addition, the procedure information 71 is associated with the procedure ID, and the procedure calling sequence and the processor number at that time are collected as the operation information 8 to obtain the data file 3
Save to.

【0021】データファイル3は、抽出/収集部21が
PE#0ないしPE#3から抽出して同一のプロシジャ
ーIDの実行回数を計数などしたプロシジャー情報71
をプロシジャー管理テーブル7に登録して保存および併
せてプロシジャーIDに対応づけて動作情報8を保存す
るものである。
The data file 3 is extracted from PE # 0 to PE # 3 by the extraction / collection unit 21 and the procedure information 71 obtained by counting the number of times of execution of the same procedure ID is recorded.
Is registered and stored in the procedure management table 7, and the operation information 8 is also stored in association with the procedure ID.

【0022】ディスプレイ6は、プロセッサ構成図など
を表示するものである。対応テーブル72は、プロシジ
ャーIdに対応づけて使用する変数を登録するものであ
る。
The display 6 displays a processor block diagram and the like. The correspondence table 72 is for registering variables to be used in association with the procedure Id.

【0023】次に、図2の(イ)のフローチャートに示
す順序に従い、図1の構成の動作を詳細に説明する。図
2の(イ)において、S1は、PE#0が実行およびプ
ロシジャーIDの割り付けを行う。これは、並列プログ
ラムをロードしたPE#0が当該並列プログラムを実行
し、プロシジャーに一意のプロシジャーIDを割り付け
る。例えば並列プログラムのプロシジャー(関数やサブ
ルーチンなど)に一意のプロシジャーIDを割り付け
る。
Next, the operation of the configuration of FIG. 1 will be described in detail according to the order shown in the flow chart of FIG. In (a) of FIG. 2, in S1, PE # 0 executes and allocates the procedure ID. In this case, PE # 0 loaded with the parallel program executes the parallel program and assigns a unique procedure ID to the procedure. For example, a unique procedure ID is assigned to a procedure (function, subroutine, etc.) of a parallel program.

【0024】S2は、自メモリにプロシジャー情報およ
び動作情報を保存する。これは、S1で割り付けたプロ
シジャーIDに対応づけてプロシジャー情報としてプロ
シジャー名(例えばモジュール名、手続き名など)、引
数の個数などを保存および動作情報として呼び出し系列
(例えばプロシジャーID0からプロシジャーID1が
呼び出されていること)を保存する(図2の(ロ)、
(ハ)参照)。
In step S2, the procedure information and the operation information are stored in the own memory. This is to store the procedure name (eg, module name, procedure name, etc.) and the number of arguments as procedure information in association with the procedure ID assigned in S1, and call sequence (eg, procedure ID0 to procedure ID1 called as operation information). Saved) ((b) in Figure 2,
(See (c)).

【0025】S3は、一連の処理を終了したか否かを判
別する。YESの場合には、S4に進む。一方、NOの
場合には、S1、S2を繰り返し行い、並列プログラム
の実行時のプロシジャー情報および動作情報をプロシジ
ャーIDに対応づけて自メモリに保存する。
In step S3, it is determined whether or not a series of processes has been completed. If YES, the process proceeds to S4. On the other hand, in the case of NO, S1 and S2 are repeated, and the procedure information and the operation information at the time of execution of the parallel program are stored in the own memory in association with the procedure ID.

【0026】同様に、PE#1、PE#2、PE#3に
ついても、並列プログラムの実行時のプロシジャー情報
および動作情報をプロシジャーIDに対応づけて自メモ
リに保存する。
Similarly, with respect to PE # 1, PE # 2, and PE # 3, the procedure information and the operation information at the time of execution of the parallel program are stored in the own memory in association with the procedure ID.

【0027】S4は、S3で各PEがプロシジャー情報
および動作情報を一意なプロシジャーIDに対応づけて
自メモリに保存したものを、ここでは中心となるPE#
0にそれぞれデータ転送してメモリ上のデータプール9
に一旦格納する。この際、同一のプロシジャーIDがあ
ったときはその回数をカウントアップし、2回目以降の
プロシジャー情報をデータプール9に格納しない。
In step S4, each PE stores the procedure information and operation information in its own memory in association with the unique procedure ID in step S3.
0 data transfer to memory pool 9
Once stored in. At this time, when the same procedure ID exists, the number of times is incremented, and the procedure information after the second time is not stored in the data pool 9.

【0028】S5は、S4でデータプール9に実行回数
を計数して格納したプロシジャー情報71および動作情
報8を、ディスク装置上のデータファイル3に保存す
る。これらS4、S5は、図1の抽出/収集部21が行
う。
In step S5, the procedure information 71 and the operation information 8 which have been counted and stored in the data pool 9 in step S4 are saved in the data file 3 on the disk device. These S4 and S5 are performed by the extraction / collection unit 21 of FIG.

【0029】以上によって、各PE#0からPE#3が
並列プログラムの実行時にプロシジャーに割り付けた一
意なプロシジャーIDに対応づけて自メモリに保存し、
一連の処理の終了後に中心となるここではPE#0にデ
ータ転送してプロセッサ毎に同一のプロシジャーIDの
ものを計数して実行回数とし、重複しないようにしてプ
ロシジャー情報71および動作情報8を図2の(ロ)、
(ハ)に示すようにし、ディスク装置上のデータファイ
ル3に保存する。これにより、例えばプログラム開発過
程におけるプログラムの動作を履歴として保存すること
が可能となると共に、プログラム開発時に動作を比較す
ることが可能となる。
As described above, each of PE # 0 to PE # 3 stores in its own memory in association with the unique procedure ID assigned to the procedure when the parallel program is executed,
After the series of processing is completed, the main step is to transfer data to PE # 0, count the processor with the same procedure ID for each processor, and set the number of executions so that the procedure information 71 and the operation information 8 are shown without duplication. 2 (b),
As shown in (c), the data file 3 is stored in the disk device. Thereby, for example, the operation of the program in the program development process can be saved as a history, and the operation can be compared at the time of program development.

【0030】図2の(ロ)は、プロシジャー管理テーブ
ル7の例を示す。これは、図2の(イ)のS4で各PE
#0からPE#3から収集したプロシジャー情報を格納
したものであって、同一のプロシジャーIDのプロシジ
ャー情報については実行回数を+1して重複して格納し
ないようにする。ここでは、プロシジャーIDは各PE
#0からPE#3で一意に付与した識別子であり、当該
プロシジャーIDに対応づけてプロシジャーであるモジ
ュール名、手続名、更に引数の個数、当該プロシジャー
の実行回数、当該プロシジャーを表示あるいは非表示す
るかを設定するフラグなどから構成されている。
FIG. 2B shows an example of the procedure management table 7. This is for each PE in S4 of (a) of FIG.
The procedure information collected from # 0 to PE # 3 is stored. For the procedure information having the same procedure ID, the execution count is incremented by 1 to prevent duplicate storage. Here, the procedure ID is each PE
It is an identifier uniquely assigned from # 0 to PE # 3, and is associated with the procedure ID, and is the procedure module name, procedure name, the number of arguments, the number of times the procedure is executed, and the procedure is displayed or hidden. It is composed of a flag for setting or.

【0031】図2の(ハ)は、動作情報8の例を示す。
ここで、呼び出し系列として、例えば ID,[ID1,ID2]・・・・・・・・・・・・・・・・・・・(1) を収集する。この(1)は、実行木で表わすと右側に示
すようになり、プロシジャーIDからプロシジャーID
1、プロシジャーID2の2つが図示のように呼び出さ
れている旨の動作情報を表わす。
FIG. 2C shows an example of the motion information 8.
Here, as the calling sequence, for example, ID, [ID1, ID2] ... (1) are collected. This (1) is as shown on the right side when it is expressed as an execution tree. From procedure ID to procedure ID
1 and operation ID 2 represent operation information indicating that two are called as illustrated.

【0032】図3は、本発明の原理構成図(その2)を
表わす。ここで、入力装置1、動作抽出部2、データフ
ァイル3は、図1のものと同一であるので、説明を省略
する。
FIG. 3 shows a principle configuration diagram of the present invention (No. 2). Here, the input device 1, the motion extraction unit 2, and the data file 3 are the same as those in FIG.

【0033】図3の(イ)において、動作表示部4は、
図1および図2を用いて説明したようにして収集してデ
ータファイル3に格納したプロシジャー情報71および
動作情報8を取り出し、これらをもとにPE#0からP
E#3毎にプロシジャーの動作状態を判り易くプロセッ
サ構成図として例えば図5に示すようにディスプレイ5
上に表示するものである。
In FIG. 3A, the operation display unit 4 is
The procedure information 71 and the operation information 8 collected and stored in the data file 3 as described with reference to FIGS. 1 and 2 are taken out, and PE # 0 to P
For each E # 3, the operating state of the procedure is easy to understand, and as a processor configuration diagram, for example, the display 5 as shown in FIG.
The one shown above.

【0034】システム制御部6は、ディスプレイ5上へ
のプロセッサ構成図の表示制御を行うものである。図3
の(ロ)は、動作抽出部の構成図を示す。
The system controller 6 controls the display of the processor block diagram on the display 5. Figure 3
(B) indicates a configuration diagram of the motion extraction unit.

【0035】図3の(ロ)において、PE#0からPE
#3は、並列プログラムの実行時のプロシジャー情報お
よび動作情報を収集する対象のプロセッサである。me
rgerは、PE#0ないしPE#3からプロシジャー
情報および動作情報を収集するものである(図2のフロ
ーチャート参照)。
In FIG. 3B, PE # 0 to PE #
# 3 is a target processor for collecting procedure information and operation information during execution of the parallel program. me
The rger collects procedure information and operation information from PE # 0 to PE # 3 (see the flowchart of FIG. 2).

【0036】抽出/収集部21は、mergerによっ
て各PE#0ないしPE#3から収集したプロシジャー
情報および動作情報をデータプール9に格納するもので
ある(図2のフローチャート参照)。
The extraction / collection unit 21 stores the procedure information and the operation information collected from each PE # 0 to PE # 3 by the merger in the data pool 9 (see the flowchart of FIG. 2).

【0037】データファイル3は、データプール9に格
納したプロシジャー情報および動作情報を保存するディ
スク上に設けたファイルである。割り込み命令は、並列
プログラムを実行しているPE#0ないしPE#3への
入力装置1からの割り込み命令であって、抽出/収集部
21に実行を放棄する旨のメッセージを通知するための
ものである。また、プログラム実行時にエラーが発生し
た場合にも同様に実行を放棄する旨のメッセージを通知
する。抽出/収集部21は、メッセージの通知を受ける
と、プログラムの実行を中止し、現時点までの動作情報
を収集し、データファイル3に保存する。このため、デ
ッドロックにより実行が中断したり、無限ループに陥っ
て実行が終了しなかったり、実行時にエラーで失敗した
りした場合でも、プロシジャー情報および動作情報を収
集してデータファイル3に保存することが可能となる。
The data file 3 is a file provided on a disk for storing the procedure information and operation information stored in the data pool 9. The interrupt instruction is an interrupt instruction from the input device 1 to the PE # 0 to PE # 3 executing the parallel program, and is for notifying the extraction / collection unit 21 of a message to abandon the execution. Is. Also, when an error occurs during program execution, a message to abandon the execution is similarly notified. Upon receiving the message notification, the extraction / collection unit 21 stops the execution of the program, collects the operation information up to the present time, and saves it in the data file 3. Therefore, even if the execution is interrupted by a deadlock, the execution does not end due to an infinite loop, or the execution fails due to an error, the procedure information and the operation information are collected and stored in the data file 3. It becomes possible.

【0038】履歴1、2、3は、既述したプロシジャー
IDに対応づけて収集したプロシジャー情報71および
動作情報8を表わす。図4は、本発明の1実施例構成図
を示す。
The history records 1, 2, and 3 represent the procedure information 71 and the operation information 8 collected in association with the procedure ID described above. FIG. 4 shows a block diagram of an embodiment of the present invention.

【0039】図4において、動作表示部4は、図1およ
び図2を用いて説明したように、収集してデータファイ
ル3に格納したプロシジャー情報71を管理するプロシ
ジャー管理テーブル7および動作情報8を取り出し、こ
のうちの動作情報8をもとに対応するプロシジャーID
をもつプロシジャー情報71についてプロシジャー管理
テーブル7を参照し、PE#0からPE#3毎にプロシ
ジャーの動作状態を判り易くプロセッサ構成図として例
えば図5に示すようにディスプレイ5上に表示するもの
である。ここで、プロシジャー管理テーブル7は、デー
タファイル3に既述した図2のフローチャートに従っ
て、プロシジャー情報および動作情報の収集時に作成し
て格納しておいたものを取り出してもよいし、プロシジ
ャー情報71について同一のプロシジャーIDを持つと
きに実行回数を+1してこの段階で作成してもよい。
In FIG. 4, the operation display unit 4 displays the procedure management table 7 and the operation information 8 for managing the procedure information 71 collected and stored in the data file 3 as described with reference to FIGS. 1 and 2. Take out the corresponding procedure ID based on the operation information 8
The procedure management table 7 is referred to for the procedure information 71 having "", and the operating state of the procedure is displayed on the display 5 as a processor block diagram for each PE # 0 to PE # 3 in an easily understandable manner. .. Here, the procedure management table 7 may be the one created and stored at the time of collecting the procedure information and the operation information according to the flowchart of FIG. When the procedure ID is the same, the number of executions may be increased by +1 to create it at this stage.

【0040】プロシジャー管理テーブル7は、プロシジ
ャーIDに対応づけて、Name(プロシジャー名、例
えばモジュール名、手続名など)、実行回数、引数の個
数などを設定する。
The procedure management table 7 sets Name (procedure name, eg, module name, procedure name, etc.), the number of executions, the number of arguments, etc. in association with the procedure ID.

【0041】動作情報8は、プロシジャーの呼び出し系
列などであって、図2の(ハ)のようなものである。デ
ィスプレイ5は、プロセッサ構成図を表示するものであ
って、例えば図5に示すようなプロセッサ構成図を表示
するものである。
The operation information 8 is a procedure calling sequence or the like, and is as shown in FIG. The display 5 displays a processor block diagram, and displays the processor block diagram as shown in FIG. 5, for example.

【0042】図5は、本発明のプロセッサ構成図上にお
けるプログラムの実行過程の表示例を示す。これは、プ
ロセッサPE#0からPE#7までの8個のプロセッサ
について、□でプロシジャーの動作状態を表わしたもの
である。例えばプロセッサPE#0は、4つのプロシジ
ャーが動作状態にある。プロセッサPE#1、PE#7
は、動作状態にあるプロシジャーがゼロである。
FIG. 5 shows a display example of the execution process of the program on the processor block diagram of the present invention. In this figure, □ represents the operating state of the procedure for the eight processors PE # 0 to PE # 7. For example, the processor PE # 0 has four procedures in operation. Processors PE # 1 and PE # 7
Has zero active procedures.

【0043】次に、図6から図8の各フローチャートを
用いて図4の構成の動作をそれぞれ詳細に説明する。図
6は、本発明のプロシジャー毎の図形の色分けによる識
別表示のフローチャートを示す。
Next, the operation of the configuration of FIG. 4 will be described in detail with reference to the flowcharts of FIGS. 6 to 8. FIG. 6 shows a flowchart of the identification display by color-coding the graphics for each procedure of the present invention.

【0044】図6において、S11は、プロシジャー情
報を収集する。これは、各PE#0ないしPE#3から
プロシジャー情報を収集する。S12は、プロシジャー
情報がプロシジャー管理テーブル7に登録されているか
判別する。YESの場合には、S14で実行回数のカウ
ントアップ(count=count+1)し、S15
で実行終了でなければ(S15のNO)S12を繰り返
し、S15で実行終了なら(S15のNO)S16に進
む。一方、S12のNOの場合には、S13でプロシジ
ャー情報のプロシジャー管理テーブル7への登録を行い
(実行回数:count=0)、S15で実行終了でな
ければ(S15のNO)S12を繰り返し、S15で実
行終了なら(S15のNO)S16に進む。
In FIG. 6, step S11 collects procedure information. It collects procedure information from each PE # 0 to PE # 3. In step S12, it is determined whether the procedure information is registered in the procedure management table 7. If YES, the number of executions is counted up (count = count + 1) in S14, and S15
If the execution is not completed in step S15 (NO in S15), step S12 is repeated. If the execution is completed in step S15 (NO in step S15), the process proceeds to step S16. On the other hand, in the case of NO in S12, the procedure information is registered in the procedure management table 7 in S13 (number of executions: count = 0), and if execution is not completed in S15 (NO in S15), S12 is repeated and S15 is executed. If the execution is completed (NO in S15), the process proceeds to S16.

【0045】S16は、実行回数の多い順に色を割り当
てる。これは、例えば図4のプロシジャー管理テーブル
7中の実行回数の多い順、ここではプロシジャーId
1、2、3の順に濃い色を割り当てる。
In step S16, colors are assigned in descending order of the number of executions. This is, for example, in the descending order of the number of executions in the procedure management table 7 in FIG.
Assign dark colors in the order 1, 2, 3.

【0046】S17は、S16で割り当てた色でプロシ
ジャーを表示する。例えば図10の(イ)に示すよう
に、実行回数の多いプロシジャーを濃く表示し、各プロ
セッサPE#0ないしPE#7で容易に判明するように
表示する。
In step S17, the procedure is displayed in the color assigned in step S16. For example, as shown in (a) of FIG. 10, a procedure with a large number of executions is displayed in a dark color, and is displayed so that each processor PE # 0 to PE # 7 can easily find it.

【0047】以上によって、プロシジャーの実行回数が
多い程、例えば濃く図10の(イ)に示すように表示
し、実行回数の多いプロシジャーを容易に判断できる。
これにより、いずれのプロシジャーがいずれのPE上で
動いているか、いずれのプロシジャーの実行回数が多く
てボトルネックになっているかを容易にプログラマに知
らせることが可能となる。
As described above, the higher the number of executions of a procedure, the darker it is displayed as shown in (a) of FIG. 10, and the procedure having a large number of executions can be easily determined.
As a result, it becomes possible to easily inform the programmer which procedure is running on which PE and which procedure is the bottleneck due to the large number of executions.

【0048】図7は、本発明の共有変数を持つプロシジ
ャーのリアルタイム識別表示のフローチャートを示す。
図7の(イ)において、S21は、プロシジャー情報を
収集する。これは、リアルタイムに各PE#0ないしP
E#7からプロシジャー情報(および動作情報)を収集
する(図2のフローチャート参照)。
FIG. 7 shows a flow chart of the real-time identification display of a procedure having a shared variable according to the present invention.
In FIG. 7A, S21 collects procedure information. This is for each PE # 0 to P in real time.
The procedure information (and operation information) is collected from E # 7 (see the flowchart of FIG. 2).

【0049】S22は、プロシジャー情報と変数との対
応テーブルへの登録、削除を行う。これは、S21で収
集したリアルタイムのプロシジャー情報について、図7
の(ロ)に示すように、プロシジャーIdに対応づけて
その変数例えば変数X、Yなどを図示のように対応づけ
て登録する。
In step S22, the procedure information and the variable are registered and deleted from the correspondence table. This is the real-time procedure information collected in S21 as shown in FIG.
As shown in (b), the variables such as variables X and Y are registered in association with the procedure Id as illustrated.

【0050】S23は、プロシジャーを表わす図形を表
示、削除する。これは、収集したプロシジャー情報につ
いて、登録すると共に削除したプロシジャー情報につい
て削除し、爆発的に増加するプロシジャー情報の量を抑
える。
In step S23, the graphic representing the procedure is displayed and deleted. This reduces the amount of procedure information that explosively increases by registering the procedure information that has been collected and deleting the procedure information that has been deleted.

【0051】S24は、実行中断のユーザ指定がありか
否かを判別する。YESの場合には、S25に進む。N
Oの場合には、S21を繰り返し行う。S25は、識別
表示コマンドの投入に対応して、対応テーブル72を参
照して、指定されたプロシジャーと共有変数を持つプロ
シジャーを検索する。これは、図7の(ロ)の対応テー
ブル72を参照し、例えば指定されたプロシジャーId
1と共有変数、ここでは変数Yを持つ他のプロシジャー
Id2を検索して見つける。
In step S24, it is determined whether or not there is a user designation of execution interruption. If YES, the process proceeds to S25. N
In the case of O, S21 is repeated. In S25, in response to the input of the identification display command, the correspondence table 72 is referred to, and the procedure having the designated procedure and the shared variable is searched. This is done by referring to the correspondence table 72 in (b) of FIG. 7 and referring to, for example, the specified procedure Id.
Search for and find another procedure Id2 with 1 and a shared variable, here the variable Y.

【0052】S26は、検索されたプロシジャーの強調
表示を行う。これは、例えば図10の(ロ)の“指定さ
れたプロシジャー”と矢印で示すプロシジャーと変数を
共有する他のプロシジャーを強調表示(ここでは同じ濃
度で強調表示)する。
In step S26, the retrieved procedure is highlighted. This highlights other procedures that share variables with the procedure designated by the arrow, such as the "designated procedure" in (b) of FIG. 10 (here, highlighted with the same concentration).

【0053】以上によって、リアルタイムにプロシジャ
ー情報および動作情報を収集しつつプロシジャーIdと
変数との対応を対応テーブル72に登録しておき、実行
中断指示に対応して、プロセッサ構成図上の変数を共有
するプロシジャーを強調表示することにより、共有変数
を持つプロシジャーを識別し、並列プログラムのデバッ
グ、特に変数のタイプミスによるデッドロックのバグ検
出を容易に行うことが可能となる。
As described above, the correspondence between the procedure Id and the variable is registered in the correspondence table 72 while collecting the procedure information and the operation information in real time, and the variable on the processor block diagram is shared in response to the execution interruption instruction. By highlighting the procedure to be executed, it becomes possible to identify the procedure having the shared variable and to easily debug the parallel program, especially to detect the deadlock bug due to the typo of the variable.

【0054】図7の(ロ)は、対応テーブル72の例を
示す。対応テーブル72は、プロシジャーIdに対応づ
けて変数を図示のように登録するものである。そして、
表示時に、指定されたプロシジャーIdと同じ変数を持
つ他のプロシジャーIdを検索して見つけ、これらを強
調表示する。
FIG. 7B shows an example of the correspondence table 72. The correspondence table 72 is for registering variables as illustrated in association with the procedure Id. And
At the time of display, another procedure Id having the same variable as the designated procedure Id is searched and found, and these are highlighted.

【0055】図8は、本発明のあるプロシジャーに着目
した表示フローチャートを示す。図8において、S31
は、プロシジャー管理テーブルへのプロシジャー情報の
登録を行う。これは、例えば収集したプロシジャー情報
を図4のプロシジャー管理テーブル7に登録する。
FIG. 8 shows a display flowchart focusing on a certain procedure of the present invention. In FIG. 8, S31
Registers the procedure information in the procedure management table. For example, the collected procedure information is registered in the procedure management table 7 of FIG.

【0056】S32は、ユーザによる着目したいプロシ
ジャーの指定が有りか否かを判別する。YESの場合に
は、S33でプロシジャー管理テーブル7に指定された
プロシジャーIdの表示フラグを1にする。例えば図4
のプロシジャー管理テーブル7のプロシジャーId1の
表示/非表示フラグを1にする。そして、S32に進
む。
In step S32, it is determined whether or not the user has designated a procedure of interest. In the case of YES, the display flag of the procedure Id designated in the procedure management table 7 is set to 1 in S33. For example, in FIG.
The display / non-display flag of the procedure Id1 in the procedure management table 7 is set to 1. Then, the process proceeds to S32.

【0057】S34は、動作情報を送出する。S35
は、プロシジャー管理テーブル7を参照する。S36
は、S35の参照によって、プロシジャーIdのフラグ
が1であるか否かを判別する。YESの場合には、S3
7で表示を行い、S34を繰り返し行う。一方、S36
でNOの場合には、表示することなく、S34を繰り返
し行う。
In step S34, the operation information is sent out. S35
Refers to the procedure management table 7. S36
Determines whether the flag of the procedure Id is 1 by referring to S35. If YES, S3
The display is made at 7, and S34 is repeated. On the other hand, S36
In the case of NO at S34, S34 is repeated without displaying.

【0058】以上によって、図10の(ハ)に示すよう
に、フラグ(表示/非表示フラグ)を1に設定したプロ
シジャーのみ表示させることが可能となる。これによ
り、プロセッサ構成図上でプログラムの実行過程表示時
に、注目したいプロシジャーのみを表示し、プロシジャ
ーがどの位い動いているかといった情報を判り易く表示
することができる。
As described above, as shown in (c) of FIG. 10, only the procedure in which the flag (display / non-display flag) is set to 1 can be displayed. As a result, when displaying the execution process of the program on the processor block diagram, only the procedure of interest can be displayed, and information such as how much the procedure is moving can be displayed in an easy-to-understand manner.

【0059】図9は、本発明の表示例(その1)を示
す。図9の(イ)は、初期状態作成コマンドによるプロ
セッサを表わす図形の表示例を示す。これは、8×4=
32台のプロセッサに対応づけた矩形領域をディスプレ
イ5上に表示した例を示す。この各矩形領域内に、後述
するプロシジャーをそれぞれ表示する。
FIG. 9 shows a display example (1) of the present invention. FIG. 9A shows a display example of a graphic representing the processor by the initial state creation command. This is 8 × 4 =
An example in which a rectangular area corresponding to 32 processors is displayed on the display 5 is shown. A procedure described later is displayed in each rectangular area.

【0060】図9の(ロ)は、プロセッサを表わす図形
の内部に要素を一番後ろに加える表示例を示す。図中で
callされたプロシジャー又はデータを矢印で示す矩
形で表わす。ここで、プロシジャーの実行開始状態コマ
ンドcallが入力されたことに対応して、左側のPE
#0に示すように後ろにプロシジャー又はデータを表わ
す矩形を1つ追加する。また、右側のPE#0に示すよ
うに右端の状態で1つ加える場合には、次行の先頭に図
形を表示する。
FIG. 9B shows a display example in which an element is added to the rearmost part in the figure representing the processor. In the figure, the procedures or data that are called are represented by rectangles indicated by arrows. Here, in response to the input of the procedure start state command call, the PE on the left side
As shown in # 0, one rectangle representing a procedure or data is added at the end. If one is added at the right end as shown in PE # 0 on the right side, a graphic is displayed at the beginning of the next line.

【0061】図9の(ハ)は、プロセッサを表わす図形
の内部から要素を削除する表示例を示す。これは、プロ
シジャーの終了コマンドが入力されたことに対応して、
図中の左側のPE#0からプロシジャーを1つ削除して
中央の状態にし、次にこの削除した位置に後ろの図形を
詰めて表示する。
FIG. 9C shows a display example in which an element is deleted from the inside of the graphic representing the processor. This corresponds to the input of the procedure end command,
One procedure is deleted from PE # 0 on the left side of the figure to bring it to the central state, and the figure at the back is packed and displayed at this deleted position.

【0062】図9の(ニ)は、プロセッサを表わす図形
間を要素が移動する表示例を示す。これは、左の(A)
の状態で、プロシジャーの分散コマンドが入力されたこ
とに対応して、(B)に示すように、PE#0上の移動
指定された図形が軌跡を描いて移動先指定されたPE#
1の先頭の位置に移動する。そして、(C)に示すよう
に、移動元の図形が左側にシフトして詰めて表示する。
FIG. 9D shows a display example in which elements move between figures representing a processor. This is the left (A)
In response to the input of the procedure distribution command in this state, as shown in (B), the PE # 0 designated as the movement destination draws a locus and the PE # designated as the movement destination is drawn.
Move to the first position of 1. Then, as shown in (C), the graphic of the movement source is shifted to the left side and is displayed together.

【0063】図10は、本発明の表示例(その2)を示
す。図10の(イ)は、プロシジャー毎の色分けによる
表示例を示す。これは、図6のフローチャートに従っ
て、プロセッサ構成図上のプロセッサの矩形領域内で実
行回数の多いプロシジャーを濃い色に表示した例を示
す。
FIG. 10 shows a display example (2) of the present invention. FIG. 10A shows an example of display by color coding for each procedure. This shows an example in which, in accordance with the flowchart of FIG. 6, a procedure that has been executed many times is displayed in a dark color in a rectangular area of the processor on the processor configuration diagram.

【0064】図10の(ロ)は、共有変数を持つプロシ
ジャーの表示例を示す。これは、図7のフローチャート
に従って、プロセッサ構成図上のプロセッサの矩形領域
内で、指定したプロシジャーが持つ変数と同じ変数を持
つプロシジャーを強調表示した例を示す。
FIG. 10B shows a display example of a procedure having a shared variable. This shows an example in which a procedure having the same variable as the designated procedure is highlighted in the rectangular area of the processor on the processor block diagram according to the flowchart of FIG. 7.

【0065】図10の(ハ)は、あるプロシジャーに着
目した表示例を示す。これは、図8のフローチャートに
従って、プロセッサ構成図上のプロセッサの矩形領域内
で、指定したプロシジャーと同一のプロシジャーのみを
表示した例を示す。
FIG. 10C shows a display example focusing on a certain procedure. This shows an example in which only the same procedure as the designated procedure is displayed in the rectangular area of the processor on the processor block diagram according to the flowchart of FIG.

【0066】[0066]

【発明の効果】以上説明したように、本発明によれば、
並列マシン上で実行させたときのプロシジャー情報71
び動作情報8を収集して各プロセッサに対応づけて判り
易くプロセッサ構成図として表示する構成を採用してい
るため、並列マシン上での負荷分散アルゴリズムの性能
評価やデバッグなどのプログラム開発作業を支援して行
いやすくすることができる。特に計算速度の効率が悪い
プログラムの原因となる個所や、デッドロックや無限ル
ープなどの並列プログラム特有のバグの原因となる個所
を見つける際に有効であり、プログラム開発作業の支援
に大きく役立つ。
As described above, according to the present invention,
Procedure information 71 when executed on a parallel machine
And the operation information 8 are collected and displayed in a processor configuration diagram that is easy to understand by associating with each processor, supporting the program development work such as performance evaluation and debugging of load balancing algorithms on parallel machines. It can be done easily. In particular, it is effective in finding a place that causes a program with inefficient calculation speed or a place that causes a bug peculiar to a parallel program such as deadlock or infinite loop, and is very useful for supporting the program development work.

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

【図1】本発明の原理構成図(その1)である。FIG. 1 is a principle configuration diagram (1) of the present invention.

【図2】本発明のプロシジャー情報/動作情報の収集フ
ローチャートである。
FIG. 2 is a flowchart for collecting procedure information / operation information according to the present invention.

【図3】本発明の原理構成図(その2)である。FIG. 3 is a principle configuration diagram (2) of the present invention.

【図4】本発明の1実施例構成図である。FIG. 4 is a configuration diagram of an embodiment of the present invention.

【図5】本発明のプロセッサ構成図上におけるプログラ
ムの実行過程の表示例である。
FIG. 5 is a display example of an execution process of a program on the processor block diagram of the present invention.

【図6】本発明のプロシジャー毎の図形の色分けによる
識別表示のフローチャートである。
FIG. 6 is a flowchart of identification display by color-coding graphics for each procedure of the present invention.

【図7】本発明の共有変数を持つプロシジャーのリアル
タイム識別表示のフローチャートである。
FIG. 7 is a flowchart of real-time identification display of a procedure having a shared variable according to the present invention.

【図8】本発明のあるプロシジャーに着目した表示フロ
ーチャートである。
FIG. 8 is a display flowchart focusing on a certain procedure of the present invention.

【図9】本発明の表示例(その1)である。FIG. 9 is a display example (1) of the present invention.

【図10】本発明の表示例(その2)である。FIG. 10 is a display example (2) of the present invention.

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

1:入力装置 2:動作抽出部 21:抽出/収集部 3:データファイル 4:動作表示部 5:ディスプレイ 6:システム制御部 7:プロシジャー管理テーブル 71:プロシジャー情報 72:対応テーブル 10:システム制御部 1: Input device 2: Action extraction unit 21: Extraction / collection unit 3: Data file 4: Action display unit 5: Display 6: System control unit 7: Procedure management table 71: Procedure information 72: Correspondence table 10: System control unit

フロントページの続き (72)発明者 松沢 史子 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内Front page continuation (72) Inventor Fumiko Matsuzawa 1015 Kamiodanaka, Nakahara-ku, Kawasaki-shi, Kanagawa Fujitsu Limited

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 並列プログラムの実行時のプロシジャー
情報を収集して各プロセッサに対応づけて表示する並列
プログラム開発支援装置において、 並列プログラムを動作させる複数のプロセッサと、 これら複数のプロセッサ上で動作させた並列プログラム
のプロシジャー情報(71)および動作情報(8)を抽
出して収集する動作抽出部(2)とを備え、 この動作抽出部(2)が一連の処理について収集したプ
ロセッサ毎のプロシジャー情報(71)および動作情報
(8)をもとに、各プロセッサに対応づけてプロシジャ
ーを表示するように構成したことを特徴とする並列プロ
グラム開発支援装置。
1. A parallel program development supporting apparatus for collecting procedure information at the time of execution of a parallel program and displaying the procedure information in association with each processor. And the action extraction unit (2) that extracts and collects the procedure information (71) and the action information (8) of the parallel program, and the action information for each processor collected by the action extraction unit (2) for a series of processes. A parallel program development support device characterized in that a procedure is displayed in association with each processor based on (71) and operation information (8).
【請求項2】 並列プログラムの実行時のプロシジャー
情報を収集して各プロセッサに対応づけて表示する並列
プログラム開発支援装置において、 並列プログラムを動作させる複数のプロセッサと、 これら複数のプロセッサ上で動作させた並列プログラム
のプロシジャー情報(71)および動作情報(8)をリ
アルタイムに抽出して収集する動作抽出部(2)とを備
え、 この動作抽出部(2)によってリアルタイムに抽出した
プロシジャー情報(71)および動作情報(8)をもと
に、リアルタイムに各プロセッサに対応づけてプロシジ
ャーを表示するように構成したことを特徴とする並列プ
ログラム開発支援装置。
2. A parallel program development supporting apparatus for collecting procedure information at the time of execution of a parallel program and displaying the procedure information in association with each processor, wherein the parallel program is operated by a plurality of processors and the plurality of processors are operated by the plurality of processors. And a motion extraction unit (2) that extracts and collects the procedure information (71) and the motion information (8) of the parallel program in real time, and the procedure information (71) extracted in real time by the motion extraction unit (2). And a parallel program development support device configured to display a procedure corresponding to each processor in real time based on the operation information (8).
【請求項3】 並列プログラムの実行時のプロシジャー
情報を収集して各プロセッサに対応づけて表示する並列
プログラム開発支援装置において、 並列プログラムを動作させる複数のプロセッサと、 これら複数のプロセッサ上で動作させた並列プログラム
のプロシジャー情報(71)および動作情報(8)を抽
出して収集する動作抽出部(2)とを備え、 この動作抽出部(2)で収集した情報を記憶しておき、
これらプロシジャー情報(71)および動作情報(8)
をもとに順次時間の経過(あるいは逆の方向)に従って
動画として表示するように構成したことを特徴とする並
列プログラム開発支援装置。
3. A parallel program development supporting apparatus for collecting procedure information at the time of execution of a parallel program and displaying the procedure information in association with each processor, the plurality of processors operating the parallel program, and the plurality of processors operating on the plurality of processors. And a motion extraction unit (2) that extracts and collects the procedure information (71) and the motion information (8) of the parallel program, and stores the information collected by the motion extraction unit (2).
These procedure information (71) and operation information (8)
A parallel program development support device, which is configured to be sequentially displayed as a moving image according to the passage of time (or in the opposite direction).
【請求項4】 並列プログラムの実行時のプロシジャー
情報を収集して各プロセッサに対応づけて表示する並列
プログラム開発支援装置において、 並列プログラムを動作させる複数のプロセッサと、 これら複数のプロセッサ上で動作させた並列プログラム
のプロシジャー情報(71)および動作情報(8)を抽
出して収集する動作抽出部(2)と、 この動作抽出部(2)で収集したプロシジャー毎の実行
回数を管理するプロシジャー管理テーブル(7)とを備
え、 このプロシジャー管理テーブル(7)で管理されている
プロシジャーの実行回数に対応する色でプロセッサ毎に
プロシジャーを表示するように構成したことを特徴とす
る並列プログラム開発支援装置。
4. A parallel program development support apparatus for collecting procedure information at the time of execution of a parallel program and displaying the procedure information in association with each processor. An operation extraction unit (2) for extracting and collecting the procedure information (71) and operation information (8) of the parallel program, and a procedure management table for managing the number of executions of each procedure collected by the operation extraction unit (2) (7), and the parallel program development support device characterized in that the procedure is displayed for each processor in a color corresponding to the number of times of execution of the procedure managed by the procedure management table (7).
【請求項5】 並列プログラムの実行時のプロシジャー
情報を収集して各プロセッサに対応づけて表示する並列
プログラム開発支援装置において、 並列プログラムを動作させる複数のプロセッサと、 これら複数のプロセッサ上で動作させた並列プログラム
のプロシジャー情報(71)および動作情報(8)を抽
出して収集する動作抽出部(2)と、 この動作抽出部(2)によって抽出したプロシジャー情
報(71)および動作情報(8)のうちの、予め指定さ
れたプロシジャーと変数(共有変数)との対応を登録す
る対応テーブル(72)とを備え、 この対応テーブル(72)に登録されたある指定された
プロシジャーの変数と同じ変数が登録されたプロシジャ
ーを各プロセッサに対応づけて表示するように構成した
ことを特徴とする並列プログラム開発支援装置。
5. A parallel program development support apparatus for collecting procedure information at the time of execution of a parallel program and displaying the procedure information in association with each processor, the plurality of processors operating the parallel program, and the plurality of processors operating on the plurality of processors. An action extraction unit (2) that extracts and collects the procedure information (71) and action information (8) of the parallel program, and the procedure information (71) and action information (8) extracted by the action extraction unit (2) Of the specified procedure and the correspondence table (72) for registering the correspondence between the variable and the variable (shared variable), and the same variable as the variable of the specified procedure registered in the correspondence table (72). Parallels characterized by being configured to display registered procedures in association with each processor Program development support system.
【請求項6】 並列プログラムの実行時のプロシジャー
情報を収集して各プロセッサに対応づけて表示する並列
プログラム開発支援装置において、 並列プログラムを動作させる複数のプロセッサと、 これら複数のプロセッサ上で動作させた並列プログラム
のプロシジャー情報(71)および動作情報(8)を抽
出して収集する動作抽出部(2)と、 この動作抽出部(2)で収集したプロシジャー毎に表示
/非表示を管理するフラグを設けたプロシジャー管理テ
ーブル(7)とを備え、 このプロシジャー管理テーブル(7)のうちのフラグの
設定されたプロシジャーのみを各プロセッサに対応づけ
て表示するように構成したことを特徴とする並列プログ
ラム開発支援装置。
6. A parallel program development support apparatus for collecting procedure information at the time of execution of a parallel program and displaying the procedure information in association with each processor, the plurality of processors operating the parallel program, and the plurality of processors operating on the plurality of processors. An operation extraction unit (2) for extracting and collecting procedure information (71) and operation information (8) of the parallel program, and a flag for managing display / non-display for each procedure collected by the operation extraction unit (2) And a procedure management table (7) provided with, and configured to display only the flag-set procedures of the procedure management table (7) in association with each processor. Development support device.
JP3242133A 1991-09-21 1991-09-21 Device for supporting parallel program development Withdrawn JPH0581221A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3242133A JPH0581221A (en) 1991-09-21 1991-09-21 Device for supporting parallel program development

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3242133A JPH0581221A (en) 1991-09-21 1991-09-21 Device for supporting parallel program development

Publications (1)

Publication Number Publication Date
JPH0581221A true JPH0581221A (en) 1993-04-02

Family

ID=17084801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3242133A Withdrawn JPH0581221A (en) 1991-09-21 1991-09-21 Device for supporting parallel program development

Country Status (1)

Country Link
JP (1) JPH0581221A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008015940A (en) * 2006-07-07 2008-01-24 Fujitsu Ltd Software development device and software development method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008015940A (en) * 2006-07-07 2008-01-24 Fujitsu Ltd Software development device and software development method
US8079014B2 (en) 2006-07-07 2011-12-13 Fujitsu Semiconductor Limited Software development apparatus and method

Similar Documents

Publication Publication Date Title
Maas et al. Trash day: Coordinating garbage collection in distributed systems
JPH04268927A (en) Apparatus and method for controlling memory
KR100280161B1 (en) Out of sequence work methods and devices
Treleaven et al. Combining data flow and control flow computing
CN101025701A (en) Memory dump method, memory dump program and computer system
US7454749B2 (en) Scalable parallel processing on shared memory computers
JPH0683608A (en) Program analysis support device
JPH0581221A (en) Device for supporting parallel program development
JPH06348664A (en) Controller for computer system constituted of plural cpus provided with different instruction characteristics
JP3016359B2 (en) Processor allocation device, processor allocation method, and medium storing processor allocation program in multiprocessor system
JPH0713823A (en) File resource management system of virtual computer system
Tarnvik Dynamo‐a portable tool for dynamic load balancing on distributed memory multicomputers
JPH10240581A (en) Cpu time measuring instrument
JPH01195562A (en) Control system for allocation of input/output device
JP3644078B2 (en) Program sharing device and method
JPH11249911A (en) Method and device for calling thread non-recognition routine using arithmetic dependent temporary data structure and computer programmed product
JPH11143743A (en) Message classifying method and device therefor
JP3022398B2 (en) Virtual computer system
JPH1153327A (en) Multiprocessor system
JPH02148231A (en) Program performance analyzing device
JP2638290B2 (en) Job input processing device
JP2591818B2 (en) Auxiliary function selection control method
JPH02183833A (en) Compiling system for multiprocessor
Németh et al. Performance testing in LOGFLOW
JPH0922363A (en) Task constituting system

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19981203