JPH08137714A - Debugging method and debugging system for multitask program - Google Patents

Debugging method and debugging system for multitask program

Info

Publication number
JPH08137714A
JPH08137714A JP7232131A JP23213195A JPH08137714A JP H08137714 A JPH08137714 A JP H08137714A JP 7232131 A JP7232131 A JP 7232131A JP 23213195 A JP23213195 A JP 23213195A JP H08137714 A JPH08137714 A JP H08137714A
Authority
JP
Japan
Prior art keywords
program
size
serial
value
data array
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP7232131A
Other languages
Japanese (ja)
Other versions
JP2738360B2 (en
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 JP7232131A priority Critical patent/JP2738360B2/en
Publication of JPH08137714A publication Critical patent/JPH08137714A/en
Application granted granted Critical
Publication of JP2738360B2 publication Critical patent/JP2738360B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE: To detect an error at the time of rewriting a serial program to a multitask program by collating the values and the sizes of data arrangement in a part where the serial program and the multitask program are respectively executed and processed in parallel. CONSTITUTION: For rewriting data arrangement which is distributedly arranged in such a way that it is processed in parallel by respective processors, a program conversion means 13 generates a multitask conversion program 15 for the multitask program 12 and generates a serial conversion program 14 to the serial program 11. A collation data saving means 16 saves the value and the size of data in a collation data file 17 whenever the serial conversion program 14 passes through the fitted part of data at the time of executing the program. A data collation means 18 collates the size and the value of data at every collation part at the time of executing the multitask conversion program 15, and judges whether the programs 11 and 12 are equivalent or not. When they are not equivalent, the effect is outputted to an output device.

Description

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

【発明の属する技術分野】本発明は、分散メモリ型のマ
ルチプロセッサシステムにおけるマルチタスクプログラ
ムのデバッグ方法およびデバッグシステムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a debug method and a debug system for a multitask program in a distributed memory type multiprocessor system.

【0001】[0001]

【従来の技術】分散メモリ型のマルチプロセッサシステ
ムでは、プロセッサを有効に利用してプログラムを高速
に実行するために、シングルプロセッサで実行していた
シリアルプログラムを、配列データを各プロセッサに分
散配置して複数のプロセッサで同時に処理するようなマ
ルチタスクプログラムに書き換えることが多い。
2. Description of the Related Art In a distributed memory type multiprocessor system, in order to execute a program at high speed by effectively using the processors, the serial program executed by a single processor is arranged in array data in each processor. It is often rewritten into a multi-task program that is processed simultaneously by multiple processors.

【0002】このようなマルチタスクプログラムが正し
いことを確認したりデバッグする場合、各タスクで別々
に処理される配列データの値を確認する必要がある。従
来の一般的な方法では、デバッガで配列データの値を確
認したい箇所にブレイクポイントを設定し、その値を確
認していた。
In order to confirm or debug such a multi-task program as being correct, it is necessary to confirm the value of array data processed separately in each task. In the conventional general method, a breakpoint is set at a position where the value of array data is to be confirmed by a debugger, and the value is confirmed.

【0003】特開平3−246732号公報には、マル
チタスクプログラムのデバッグ方法として、タスク間共
有定義変数のアクセスに関するトレース情報を解析する
ことによってデバッグするという技術が開示されてい
る。
Japanese Unexamined Patent Publication No. 3-246732 discloses a technique for debugging a multi-task program by analyzing trace information relating to access to shared definition variables between tasks.

【0004】[0004]

【発明が解決しようとする課題】マルチタスクプログラ
ムのデバッグで一般的なデバッガを使う方法では、ブレ
イクポイントを何回か通過して初めてデータの値が不正
になるということがあり、効率的に誤りを検出すること
ができないという問題点があった。
In the method of using a general debugger for debugging a multi-task program, the value of the data may become invalid only after passing through the breakpoint several times, which leads to an efficient error. There was a problem that could not be detected.

【0005】特開平3−246732号公報記載の技術
においては、トレース情報を採取する処理時間が本来の
プログラムの処理時間に比べて相対的に大きくなるた
め、本来のマルチタスクプログラムとは異なる実行結果
を生む可能性が高くなるという問題点があった。
In the technique disclosed in Japanese Patent Laid-Open No. 3-246732, the processing time for collecting the trace information is relatively longer than the processing time of the original program, so that an execution result different from that of the original multi-task program is obtained. There was a problem that the possibility of producing

【0006】本発明の目的は、シリアルプログラムから
マルチタスクプログラムを正しく生成することにある。
An object of the present invention is to correctly generate a multitask program from a serial program.

【0007】本発明の他の目的は、シリアルプログラム
をマルチタスクプログラムに書き換えた際の誤りを検出
することにある。
Another object of the present invention is to detect an error when rewriting a serial program into a multitask program.

【0008】さらに本発明の他の目的は、シリアルプロ
グラムを基にして作成したマルチタスクプログラムの実
行結果を変えることなく、該マルチタスクプログラムを
効率良くデバッグすることにある。
Still another object of the present invention is to efficiently debug the multitask program without changing the execution result of the multitask program created based on the serial program.

【0009】[0009]

【課題を解決するための手段】本発明の第1のマルチタ
スクプログラムのデバッグ方法は、分散メモリ型のマル
チプロセッサシステムの各プロセッサ上のメモリに、シ
リアルプログラムのループ中で処理されるデータ配列を
分散配置して各プロセッサで並列に処理するように書き
直したマルチタスクプログラムの正当性を検証するマル
チタスクプログラムのデバッグ方法であって、前記シリ
アルプログラムを実行して並列処理を行う箇所のデータ
配列の値とサイズを得て、さらに前記マルチタスクプロ
グラムを実行して並列処理を行う箇所のデータ配列の値
とサイズを得て、その後、双方の並列処理を行う箇所の
データ配列の値とサイズが不一致の場合には、前記シリ
アルプログラムが前記マルチタスクプログラムと等価で
はない旨を出力することを特徴とする。
A first multitasking program debugging method of the present invention provides a memory array on each processor of a distributed memory type multiprocessor system with a data array processed in a loop of a serial program. A debugging method of a multitasking program for verifying the correctness of a multitasking program, which is rewritten so as to be distributed and processed in parallel by each processor, wherein a data array of a portion where the serial program is executed to perform parallel processing is executed. The value and size are obtained, and the value and size of the data array at the location where parallel processing is performed by executing the multitask program are obtained, and then the value and size of the data array at the location where both parallel processing are performed do not match. In the case of, it is output that the serial program is not equivalent to the multi-task program. It is characterized in.

【0010】本発明の第2のマルチタスクプログラムの
デバッグ方法は、分散メモリ型のマルチプロセッサシス
テムの各プロセッサ上のメモリに、シリアルプログラム
のループ中で処理されるデータ配列を分散配置して各プ
ロセッサで並列に処理するように書き直したマルチタス
クプログラムの正当性を検証するマルチタスクプログラ
ムのデバッグ方法であって、前記シリアルプログラムに
並列処理を行う箇所のデータ配列の値とサイズを得る指
示を追加したシリアル変換プログラムと、前記マルチタ
スクプログラムに並列処理を行う箇所のデータ配列の値
とサイズを得る指示を追加したマルチタスク変換プログ
ラムとをそれぞれ実行し、その後、双方の並列処理を行
う箇所のデータ配列の値とサイズが不一致の場合には、
前記シリアルプログラムが前記マルチタスクプログラム
と等価ではない旨を出力することを特徴とする。
A second method for debugging a multi-task program according to the present invention is to dispose a data array processed in a loop of a serial program in a memory on each processor of a distributed memory type multiprocessor system in a distributed manner. A method for debugging a multi-task program that verifies the correctness of a multi-task program rewritten so that it is processed in parallel by adding an instruction to obtain the value and size of the data array at the location where parallel processing is performed to the serial program. The serial conversion program and the multitask conversion program in which an instruction to obtain the value and size of the data array at the location where the parallel processing is performed are added to the multitask program, and then the data array at the location where the parallel processing of both is performed If the value of and the size do not match,
It is characterized by outputting that the serial program is not equivalent to the multi-task program.

【0011】本発明の第1のマルチタスクプログラムの
デバッグシステムは、分散メモリ型のマルチプロセッサ
システムの各プロセッサ上のメモリに、シリアルプログ
ラムのループ中で処理されるデータ配列を分散配置して
各プロセッサで並列に処理するように書き直したマルチ
タスクプログラムの正当性を検証するマルチタスクプロ
グラムのデバッグシステムであって、前記シリアルプロ
グラムを実行して並列処理を行う箇所のデータ配列の値
とサイズを得るとともに、前記マルチタスクプログラム
を実行して並列処理を行う箇所のデータ配列の値とサイ
ズをも得て、双方の並列処理を行う箇所のデータ配列の
値とサイズが不一致の場合には、前記シリアルプログラ
ムが前記マルチタスクプログラムと等価ではない旨を出
力装置へ出力するデータ照合手段を備えている。
A first multitasking program debugging system according to the present invention is a distributed memory type multiprocessor system in which a data array processed in a loop of a serial program is distributed and arranged in a memory on each processor. A multi-task program debugging system for verifying the correctness of a multi-task program rewritten so as to be processed in parallel by executing the serial program to obtain a value and a size of a data array at which parallel processing is performed. , The multi-task program is executed to obtain the value and size of the data array at the location where parallel processing is performed, and if the value and the size of the data array at locations where both parallel processing are performed do not match, the serial program Output to the output device that is not equivalent to the multitask program And a chromatography data comparing means.

【0012】本発明の第2のマルチタスクプログラムの
デバッグシステムは、分散メモリ型のマルチプロセッサ
システムの各プロセッサ上のメモリに、シリアルプログ
ラムのループ中で処理されるデータ配列を分散配置して
各プロセッサで並列に処理するように書き直したマルチ
タスクプログラムの正当性を検証するマルチタスクプロ
グラムのデバッグシステムであって、前記シリアルプロ
グラムに並列処理を行う箇所のデータ配列の値とサイズ
を得る指示を追加したシリアル変換プログラムと、前記
マルチタスクプログラムに並列処理を行う箇所のデータ
配列の値とサイズを得る指示を追加したマルチタスク変
換プログラムとをそれぞれ実行し、双方の並列処理を行
う箇所のデータ配列の値とサイズが不一致の場合には、
前記シリアルプログラムが前記マルチタスクプログラム
と等価ではない旨を出力装置へ出力するデータ照合手段
を備えている。
A second multitask program debug system of the present invention is a distributed memory type multiprocessor system in which a data array processed in a loop of a serial program is distributed and arranged in a memory on each processor. A debugging system for a multitasking program that verifies the correctness of a multitasking program rewritten so as to be processed in parallel by adding an instruction to obtain a value and a size of a data array at a location where parallel processing is performed to the serial program. The serial conversion program and the multitask conversion program in which an instruction to obtain the value and size of the data array at the location where parallel processing is performed are added to the multitask program, and the value of the data array at the location where both parallel processing are performed And the size does not match,
Data collating means for outputting to the output device that the serial program is not equivalent to the multitask program is provided.

【0013】本発明の第3のマルチタスクプログラムの
デバッグシステムは、分散メモリ型のマルチプロセッサ
システムの各プロセッサ上のメモリに、シリアルプログ
ラムのループ中で処理されるデータ配列を分散配置して
各プロセッサで並列に処理するように書き直したマルチ
タスクプログラムの正当性を検証するマルチタスクプロ
グラムのデバッグシステムであって、前記シリアルプロ
グラムを入力して、並列処理を行う箇所のデータ配列の
値とサイズを照合データファイルに退避する指示を追加
したシリアル変換プログラムを生成するとともに、前記
マルチタスクプログラムを入力して、並列処理を行う箇
所のデータ配列の値とサイズを前記照合データファイル
に退避した並列処理を行う箇所のデータ配列の値とサイ
ズと照合する指示を追加したマルチタスク変換プログラ
ムを生成するプログラム変換手段と、前記シリアル変換
プログラムを実行して、並列処理を行う箇所のデータ配
列の値とサイズを前記照合データファイルに退避する照
合データ退避手段と、前記マルチタスク変換プログラム
を実行して、並列処理を行う箇所のデータ配列の値とサ
イズを前記照合データファイルに退避されているデータ
配列の値とサイズと一致するか否かを判定し、不一致の
場合には、前記シリアルプログラムが前記マルチタスク
プログラムと等価ではない旨を出力装置へ出力するデー
タ照合手段とから構成されている。
A third multitask program debug system of the present invention is a distributed memory type multiprocessor system in which a data array processed in a loop of a serial program is distributed and arranged in a memory on each processor. A multi-task program debugging system for verifying the correctness of a multi-task program rewritten so that it is processed in parallel by inputting the serial program, and checking the value and size of the data array at the location for parallel processing. Generates a serial conversion program with an instruction to save to a data file, and inputs the multitask program to perform parallel processing by saving the value and size of the data array at the location for parallel processing to the collation data file. Instruction to check the value and size of the data array at the location Program conversion means for generating the added multitask conversion program; collation data saving means for executing the serial conversion program to save the value and size of the data array at the location for parallel processing in the collation data file; Execute the multi-task conversion program, determine whether the value and size of the data array at the location for parallel processing match the value and size of the data array saved in the collation data file, and if they do not match. And a data collating means for outputting to the output device that the serial program is not equivalent to the multitask program.

【0014】本発明の第4のマルチタスクプログラムの
デバッグシステムは、分散メモリ型のマルチプロセッサ
システムの各プロセッサ上のメモリに、シリアルプログ
ラムのループ中で処理されるデータ配列を分散配置して
各プロセッサで並列に処理するように書き直したマルチ
タスクプログラムの正当性を検証するマルチタスクプロ
グラムのデバッグシステムであって、前記シリアルプロ
グラムを入力して、参照しているデータ配列の値とサイ
ズを並列ループの前で照合データファイルに退避し、定
義しているデータ配列の値とサイズを並列ループの後で
照合データファイルに退避する指示を追加したシリアル
変換プログラムを生成するとともに、前記マルチタスク
プログラムを入力して、参照しているデータ配列の値と
サイズを並列ループの前で前記照合データファイルに退
避したシリアルプログラムを実行した結果と照合し、定
義しているデータ配列の値とサイズを並列ループの後で
前記照合データファイルに退避した前記シリアルプログ
ラムを実行した結果と照合する指示を追加したマルチタ
スク変換プログラムを生成するプログラム変換手段と、
前記シリアル変換プログラム実行時に、参照しているデ
ータ配列の値とサイズを並列ループの前で前記照合デー
タファイルに退避し、定義しているデータ配列の値とサ
イズを並列ループの後で前記照合データファイルに退避
する照合データ退避手段と、前記マルチタスク変換プロ
グラム実行時に、参照しているデータ配列の値とサイズ
を並列ループの前で、前記照合データ退避手段が前記照
合データファイルに退避した前記シリアル変換プログラ
ムが参照しているデータ配列の値とサイズと一致するか
否かを判定するとともに、定義しているデータ配列の値
とサイズを並列ループの後で、前記照合データ退避手段
が前記照合データファイルに退避した前記シリアル変換
プログラムが定義しているデータ配列の値とサイズと一
致するか否かを判定し、いずれかの判定において不一致
の場合には、前記シリアルプログラムが前記マルチタス
クプログラムと等価ではない旨を出力装置へ出力するデ
ータ照合手段とから構成されている。
A fourth multitask program debugging system of the present invention is a processor for distributed memory type multiprocessor system, in which a data array processed in a loop of a serial program is distributed and arranged in a memory on each processor. A multi-task program debugging system for verifying the correctness of a multi-task program rewritten so as to be processed in parallel by inputting the serial program, and referring to the value and size of a data array of a parallel loop. Generate the serial conversion program with the instruction to save to the collation data file before and save the defined data array value and size to the collation data file after the parallel loop. The value and size of the referenced data array in parallel The result of executing the serial program saved in the verification data file after a parallel loop by comparing the value and size of the defined data array with the result of executing the serial program saved in the verification data file before Program conversion means for generating a multitask conversion program to which an instruction for collating is added,
When the serial conversion program is executed, the value and size of the data array being referenced are saved to the collation data file before the parallel loop, and the value and size of the defined data array are collated data after the parallel loop. Collation data saving means for saving to a file, and the serial data saved in the verification data file by the verification data saving means before the parallel loop when the multi-task conversion program executes the value and size of the referenced data array. The collation data saving means determines whether or not the value and size of the data array referred to by the conversion program match, and after the parallel loop of the defined data array value and size, Determine whether the value and size of the data array defined by the serial conversion program saved in the file match. And, in the case of mismatch is determined in either, and a data matching unit for outputting to the effect that the serial program is not equivalent to the multi-task program to the output device.

【0015】[0015]

【発明の実施の形態】以下、本発明の一実施例につい
て、図を参照しながら詳細に説明する。
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described in detail below with reference to the drawings.

【0016】図1を参照すると、本発明の一実施例であ
るマルチタスクプログラムのデバッグシステムは、分散
メモリ型のマルチプロセッサシステムにおいて、利用者
がシリアルプログラム11を各プロセッサ上のメモリに
データ配列を分散配置し、そのデータ配列を各プロセッ
サで並列に処理するように書き直す場合、マルチタスク
プログラム12に対して、並列に処理されるデータ配列
の値とサイズを照合する指示を追加したマルチタスク変
換プログラム15を生成し、さらにシリアルプログラム
11に対して、前記並列処理部に対応する箇所のデータ
配列の値とサイズを退避する指示を追加したシリアル変
換プログラム14を生成するプログラムであるプログラ
ム変換プログラム(以下、プログラム変換手段とする)
13と、シリアル変換プログラム14実行時、データの
適合箇所を通過する毎にデータの値とサイズを照合デー
タファイル17に退避するプログラムである照合データ
退避プログラム(以下、照合データ退避手段とする)1
6と、マルチタスク変換プログラム15実行時、データ
の照合箇所毎にデータのサイズと値を照合データファイ
ル17と照合し、マルチタスクプログラム12がシリア
ルプログラム11と等価か否かを判定し、マルチタスク
プログラム12がシリアルプログラム11と等価でない
場合には、その旨出力装置に出力するプログラムである
データ照合プログラム(以下、データ照合手段とする)
18とから構成されている。
Referring to FIG. 1, a debug system for a multitask program according to an embodiment of the present invention is a distributed memory type multiprocessor system in which a user arranges a serial program 11 into a memory array on each processor. In the case of distributed arrangement and rewriting the data array to be processed in parallel by each processor, a multitask conversion program in which an instruction to collate the value and size of the data array processed in parallel is added to the multitask program 12. A program conversion program (hereinafter referred to as a program conversion program) that generates the serial conversion program 15 that generates the serial conversion program 15 and the instruction to save the value and size of the data array at the location corresponding to the parallel processing unit to the serial program 11. , Program conversion means)
13 and a collation data saving program (hereinafter, referred to as collation data saving means) that is a program that saves the data value and size in the collation data file 17 each time the data passes through the compatible portion when the serial conversion program 14 is executed 1
6, when the multitask conversion program 15 is executed, the size and value of the data are collated with the collation data file 17 for each collation point of the data, and it is determined whether the multitask program 12 is equivalent to the serial program 11. When the program 12 is not equivalent to the serial program 11, a data collation program (hereinafter, referred to as data collation means) which is a program to that effect is output to the output device.
It is composed of 18 and.

【0017】次に本発明の一実施例であるマルチタスク
プログラムのデバッグシステムについて、図1〜図6を
参照して説明する。
Next, a multi-task program debug system according to an embodiment of the present invention will be described with reference to FIGS.

【0018】利用者はマルチプロセッサシステムのプロ
セッサを有効に利用し、プログラムの処理時間を短縮す
るために、図2に示すシリアルプログラム11を図3に
示すマルチタスクプログラム12に書き直す。本実施例
では図3に示すように、ループ21の処理時間を短縮す
るために、ループ33中で処理される配列(ARRAY
1、ARRAY2)を各プロセッサのメモリに分散する
指示31と、並列実行する指示32を利用者が追加して
いる。
The user rewrites the serial program 11 shown in FIG. 2 into the multitask program 12 shown in FIG. 3 in order to effectively use the processor of the multiprocessor system and shorten the processing time of the program. In this embodiment, as shown in FIG. 3, in order to reduce the processing time of the loop 21, the array processed in the loop 33 (ARRAY
The user has added an instruction 31 for distributing 1), ARRAY 2) to the memory of each processor, and an instruction 32 for parallel execution.

【0019】プログラム変換手段13は、シリアルプロ
グラム11を入力し(ステップ131)、マルチタスク
プログラム12上で並列処理するために分散配置された
データ配列(ARRAY1、ARRAY2)に対し、参
照しているデータ配列(ARRAY1)の値とサイズを
並列ループ33の前で照合データファイルに退避する指
示41と、定義しているデータ配列(ARRAY2)の
値とサイズを並列ループ33の後で照合データファイル
に退避する指示42を追加した図4に示すシリアル変換
プログラム14を生成する(ステップ132)。
The program converting means 13 inputs the serial program 11 (step 131), and refers to the data array (ARRAY1, ARRAY2) distributed and arranged for parallel processing on the multitask program 12. Instruction 41 to save the value and size of the array (ARRAY1) to the collation data file before the parallel loop 33, and the value and size of the defined data array (ARRAY2) to the collation data file after the parallel loop 33. The serial conversion program 14 shown in FIG. 4 to which the instruction 42 is added is generated (step 132).

【0020】また、プログラム変換手段13は、マルチ
タスクプログラム12を入力し(ステップ133)、各
プロセッサに分散配置されたデータ配列(ARRAY
1、ARRAY2)の定義と参照を行っている並列ルー
プ33に対して、並列ループ33の前で参照しているデ
ータ配列(ARRAY1)の値とサイズをシリアルプロ
グラム11を実行した結果と照合する指示51と、並列
ループ33の後で定義しているデータ配列(ARRAY
2)の値とサイズをシリアルプログラム11を実行した
結果と照合する指示52を追加した図5に示すマルチタ
スク変換プログラム15を生成する(ステップ13
4)。
Further, the program converting means 13 inputs the multitask program 12 (step 133) and arranges the data array (ARRAY) distributed in each processor.
1, an instruction to the parallel loop 33 that defines and refers to ARRAY2) to check the value and size of the data array (ARRAY1) referred to before the parallel loop 33 with the result of executing the serial program 11. 51 and the data array defined after the parallel loop 33 (ARRAY
A multitask conversion program 15 shown in FIG. 5 is generated in which an instruction 52 for checking the value and size of 2) with the result of executing the serial program 11 is added (step 13).
4).

【0021】照合データ退避手段16は、シリアル変換
プログラム14実行時、プログラム変換手段13によっ
て追加された指示に従って、マルチタスクプログラム1
2上で並列処理するために分散配置されたデータ配列
(ARRAY1、ARRAY2)に対し、参照している
データ配列(ARRAY1)の値とサイズを並列ループ
33の前で図6に示すような形式の照合データファイル
17に退避し(ステップ161)、さらに定義している
データ配列(ARRAY2)の値とサイズを並列ループ
33の後で照合データファイル17に退避する(ステッ
プ162)。
The collation data saving means 16 executes the multitask program 1 according to the instruction added by the program converting means 13 when the serial converting program 14 is executed.
For the data arrays (ARRAY1, ARRAY2) that are distributed and arranged for parallel processing on 2 above, the value and size of the referenced data array (ARRAY1) are set in the form as shown in FIG. The value and size of the defined data array (ARRAY2) are saved in the collation data file 17 (step 161), and saved in the collation data file 17 after the parallel loop 33 (step 162).

【0022】データ照合手段18は、マルチタスク変換
プログラム15実行時、プログラム変換手段13によっ
て追加された指示に従って、マルチタスクプログラム1
2上で各プロセッサに分散配置されたデータ配列(AR
RAY1、ARRAY2)の定義と参照を行っている並
列ループ33に対して、並列ループ33の前で参照して
いるデータ配列(ARRAY1)の値とサイズを、照合
データ退避手段16によって照合データファイル17に
出力されたシリアル変換プログラム14を実行した結果
であるデータ配列(ARRAY1)の値とサイズと照合
し(ステップ181)、さらに並列ループ33の後で定
義しているデータ配列(ARRAY2)の値とサイズ
を、照合データ退避手段16によって照合データファイ
ル17に出力されたシリアル変換プログラム14を実行
した結果であるデータ配列(ARRAY2)の値とサイ
ズと照合する(ステップ182)。
The data collating means 18 executes the multitask program 1 according to the instruction added by the program converting means 13 when the multitask converting program 15 is executed.
Data array (AR
For the parallel loop 33 that defines and refers to (RAY1, ARRAY2), the collation data saving unit 16 collates the collation data file 17 with the value and size of the data array (ARRAY1) referred to before the parallel loop 33. The value and size of the data array (ARRAY1), which is the result of execution of the serial conversion program 14 output to the data are compared (step 181), and the value of the data array (ARRAY2) defined after the parallel loop 33 is compared. The size is collated with the value and size of the data array (ARRAY2) which is the result of executing the serial conversion program 14 output to the collation data file 17 by the collation data saving means 16 (step 182).

【0023】データ照合手段18は、このステップ18
1またはステップ182における照合において、結果が
一致していなければ、図2に示すシリアルプログラム1
1と図3に示すマルチタスクプログラム12は等価では
ない、すなわち利用者によるシリアルプログラム11の
マルチタスクプログラム12への書き直しが誤っている
ということを出力装置に出力する(ステップ183)。
The data collating means 18 uses this step 18
If the results do not match in the collation 1 or step 182, the serial program 1 shown in FIG.
1 and the multitask program 12 shown in FIG. 3 are not equivalent, that is, the fact that the user rewrote the serial program 11 into the multitask program 12 is output to the output device (step 183).

【0024】以上により、本発明の一実施例であるマル
チタスクプログラムのデバッグシステムの処理が完了す
る。
As described above, the processing of the debug system for the multitask program according to the embodiment of the present invention is completed.

【0025】本発明の一実施例であるマルチタスクプロ
グラムのデバッグシステムは、シリアルプログラムをマ
ルチタスクプログラムへ書き換えた際の誤りを検出する
ことができるという効果を有している。
The multi-task program debugging system according to the embodiment of the present invention has the effect of being able to detect an error when the serial program is rewritten into the multi-task program.

【0026】[0026]

【発明の効果】以上説明したように、本発明のマルチタ
スクプログラムのデバッグシステムは、シリアルプログ
ラムを基にして作成したマルチタスクプログラムの実行
結果を変えることなく、マルチタスクプログラムをデバ
ッグすることができる効果を有している。
As described above, the multi-task program debugging system of the present invention can debug a multi-task program without changing the execution result of the multi-task program created based on the serial program. Have an effect.

【0027】さらに本発明は、シリアルプログラムから
マルチタスクプログラムを正しく生成することができる
効果を有している。
Further, the present invention has an effect that a multitask program can be correctly generated from a serial program.

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

【図1】本発明の一実施例を示すブロック図である。FIG. 1 is a block diagram showing one embodiment of the present invention.

【図2】本発明の一実施例におけるシリアルプログラム
11の例を示す図である。
FIG. 2 is a diagram showing an example of a serial program 11 according to an embodiment of the present invention.

【図3】本発明の一実施例におけるマルチタスクプログ
ラム12の例を示す図である。
FIG. 3 is a diagram showing an example of a multitask program 12 according to an embodiment of the present invention.

【図4】本発明の一実施例におけるシリアル変換プログ
ラム14の例を示す図である。
FIG. 4 is a diagram showing an example of a serial conversion program 14 in an embodiment of the present invention.

【図5】本発明の一実施例におけるマルチタスク変換プ
ログラム15の例を示す図である。
FIG. 5 is a diagram showing an example of a multitask conversion program 15 in an embodiment of the present invention.

【図6】本発明の一実施例における照合データファイル
17の例を示す図である。
FIG. 6 is a diagram showing an example of a collation data file 17 in one embodiment of the present invention.

【図7】本発明の一実施例におけるプログラム変換手段
13、照合データ退避手段16、およびデータ照合手段
18の処理を示す流れ図である。
FIG. 7 is a flow chart showing the processing of the program converting means 13, the collation data saving means 16, and the data collating means 18 in the embodiment of the present invention.

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

11 シリアルプログラム 12 マルチタスクプログラム 13 プログラム変換手段 14 シリアル変換プログラム 15 マルチタスク変換プログラム 16 照合データ退避手段 17 照合データファイル 18 データ照合手段 11 serial program 12 multi-task program 13 program conversion means 14 serial conversion program 15 multi-task conversion program 16 collation data saving means 17 collation data file 18 data collation means

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 分散メモリ型のマルチプロセッサシステ
ムの各プロセッサ上のメモリに、シリアルプログラムの
ループ中で処理されるデータ配列を分散配置して各プロ
セッサで並列に処理するように書き直したマルチタスク
プログラムの正当性を検証するマルチタスクプログラム
のデバッグ方法であって、 前記シリアルプログラムを実行して並列処理を行う箇所
のデータ配列の値とサイズを得て、さらに前記マルチタ
スクプログラムを実行して並列処理を行う箇所のデータ
配列の値とサイズを得て、その後、双方の並列処理を行
う箇所のデータ配列の値とサイズが不一致の場合には、
前記シリアルプログラムが前記マルチタスクプログラム
と等価ではない旨を出力することを特徴とするマルチタ
スクプログラムのデバッグ方法。
1. A multi-task program in which a data array to be processed in a loop of a serial program is distributed and arranged in a memory on each processor of a distributed memory type multi-processor system and rewritten so that the data is processed in parallel by each processor. Is a method for debugging a multi-task program for verifying the correctness of the above, wherein the serial program is executed to obtain the value and size of a data array at a location where parallel processing is performed, and the multi-task program is further executed to perform parallel processing. After obtaining the value and size of the data array at the location where you want to perform
A debugging method of a multi-task program, which outputs that the serial program is not equivalent to the multi-task program.
【請求項2】 分散メモリ型のマルチプロセッサシステ
ムの各プロセッサ上のメモリに、シリアルプログラムの
ループ中で処理されるデータ配列を分散配置して各プロ
セッサで並列に処理するように書き直したマルチタスク
プログラムの正当性を検証するマルチタスクプログラム
のデバッグ方法であって、 前記シリアルプログラムに並列処理を行う箇所のデータ
配列の値とサイズを得る指示を追加したシリアル変換プ
ログラムと、前記マルチタスクプログラムに並列処理を
行う箇所のデータ配列の値とサイズを得る指示を追加し
たマルチタスク変換プログラムとをそれぞれ実行し、そ
の後、双方の並列処理を行う箇所のデータ配列の値とサ
イズが不一致の場合には、前記シリアルプログラムが前
記マルチタスクプログラムと等価ではない旨を出力する
ことを特徴とするマルチタスクプログラムのデバッグ方
法。
2. A multi-task program in which a data array to be processed in a loop of a serial program is distributed and arranged in a memory on each processor of a distributed memory type multi-processor system and is rewritten so that the processors process in parallel. Is a method for debugging a multitask program for verifying the correctness of a serial conversion program in which an instruction to obtain a value and a size of a data array at a location where parallel processing is performed is added to the serial program, and parallel processing to the multitask program. Execute the multitask conversion program with an instruction to obtain the value and size of the data array at the location where each is performed, and then, if the value and size of the data array at the location at which both parallel processing are performed do not match, Note that the serial program is not equivalent to the multitask program Debugging multitask programs, characterized by force.
【請求項3】 分散メモリ型のマルチプロセッサシステ
ムの各プロセッサ上のメモリに、シリアルプログラムの
ループ中で処理されるデータ配列を分散配置して各プロ
セッサで並列に処理するように書き直したマルチタスク
プログラムの正当性を検証するマルチタスクプログラム
のデバッグシステムであって、 前記シリアルプログラムを実行して並列処理を行う箇所
のデータ配列の値とサイズを得るとともに、前記マルチ
タスクプログラムを実行して並列処理を行う箇所のデー
タ配列の値とサイズをも得て、双方の並列処理を行う箇
所のデータ配列の値とサイズが不一致の場合には、前記
シリアルプログラムが前記マルチタスクプログラムと等
価ではない旨を出力装置へ出力するデータ照合手段を備
えたことを特徴とするマルチタスクプログラムのデバッ
グシステム。
3. A multi-task program in which a data array to be processed in a loop of a serial program is distributed and arranged in a memory on each processor of a distributed memory type multi-processor system and rewritten so that the data is processed in parallel by each processor. Is a debug system of a multitask program for verifying the correctness of, the value and size of a data array at the location where the serial program is executed and parallel processing is performed, and the multitask program is executed to perform parallel processing. Also obtains the value and size of the data array at the location to be performed, and outputs the fact that the serial program is not equivalent to the multitask program if the value and the size of the data array at the location to perform parallel processing of both do not match. A multitasking program characterized by having a data collating means for outputting to a device -Time debugging system.
【請求項4】 分散メモリ型のマルチプロセッサシステ
ムの各プロセッサ上のメモリに、シリアルプログラムの
ループ中で処理されるデータ配列を分散配置して各プロ
セッサで並列に処理するように書き直したマルチタスク
プログラムの正当性を検証するマルチタスクプログラム
のデバッグシステムであって、 前記シリアルプログラムに並列処理を行う箇所のデータ
配列の値とサイズを得る指示を追加したシリアル変換プ
ログラムと、前記マルチタスクプログラムに並列処理を
行う箇所のデータ配列の値とサイズを得る指示を追加し
たマルチタスク変換プログラムとをそれぞれ実行し、双
方の並列処理を行う箇所のデータ配列の値とサイズが不
一致の場合には、前記シリアルプログラムが前記マルチ
タスクプログラムと等価ではない旨を出力装置へ出力す
るデータ照合手段を備えたことを特徴とするマルチタス
クプログラムのデバッグシステム。
4. A multitasking program in which a data array to be processed in a loop of a serial program is distributed and arranged in a memory on each processor of a distributed memory type multiprocessor system and is rewritten so that the processors process in parallel. And a serial conversion program in which an instruction to obtain the value and size of a data array at a location where parallel processing is performed is added to the serial program, and the parallel processing to the multitask program. Execute the multitask conversion program with an instruction to obtain the value and size of the data array at the location where the above is performed, and if the value and the size of the data array at the location where parallel processing of both do not match, then the serial program Output that is not equivalent to the above multitask program Debug system for multitask program characterized by comprising a data matching means for outputting to the location.
【請求項5】 分散メモリ型のマルチプロセッサシステ
ムの各プロセッサ上のメモリに、シリアルプログラムの
ループ中で処理されるデータ配列を分散配置して各プロ
セッサで並列に処理するように書き直したマルチタスク
プログラムの正当性を検証するマルチタスクプログラム
のデバッグシステムであって、 前記シリアルプログラムを入力して、並列処理を行う箇
所のデータ配列の値とサイズを照合データファイルに退
避する指示を追加したシリアル変換プログラムを生成す
るとともに、前記マルチタスクプログラムを入力して、
並列処理を行う箇所のデータ配列の値とサイズを前記照
合データファイルに退避した並列処理を行う箇所のデー
タ配列の値とサイズと照合する指示を追加したマルチタ
スク変換プログラムを生成するプログラム変換手段と、 前記シリアル変換プログラムを実行して、並列処理を行
う箇所のデータ配列の値とサイズを前記照合データファ
イルに退避する照合データ退避手段と、 前記マルチタスク変換プログラムを実行して、並列処理
を行う箇所のデータ配列の値とサイズを前記照合データ
ファイルに退避されているデータ配列の値とサイズと一
致するか否かを判定し、不一致の場合には、前記シリア
ルプログラムが前記マルチタスクプログラムと等価では
ない旨を出力装置へ出力するデータ照合手段とを備えた
ことを特徴とするマルチタスクプログラムのデバッグシ
ステム。
5. A multitasking program in which a data array to be processed in a loop of a serial program is distributedly arranged in a memory on each processor of a distributed memory type multiprocessor system and is rewritten so that the processors process in parallel. Is a debug system for a multi-task program that verifies the correctness of the serial conversion program, in which the serial program is input, and an instruction to save the value and size of the data array at the location where the parallel processing is performed to the collation data file is added. And input the multi-task program,
Program conversion means for generating a multitask conversion program that adds an instruction to collate the value and size of the data array at the location for parallel processing with the value and size of the data array at the location for parallel processing saved in the collation data file Collation data saving means for executing the serial conversion program and saving the value and size of the data array at the location for parallel processing in the collation data file; and executing the multitask conversion program to perform parallel processing. It is determined whether or not the value and size of the data array at the location match the value and size of the data array saved in the collation data file. If they do not match, the serial program is equivalent to the multitask program. And a data collating means for outputting a message to the output device Program debugging system.
【請求項6】 分散メモリ型のマルチプロセッサシステ
ムの各プロセッサ上のメモリに、シリアルプログラムの
ループ中で処理されるデータ配列を分散配置して各プロ
セッサで並列に処理するように書き直したマルチタスク
プログラムの正当性を検証するマルチタスクプログラム
のデバッグシステムであって、 前記シリアルプログラムを入力して、参照しているデー
タ配列の値とサイズを並列ループの前で照合データファ
イルに退避し、定義しているデータ配列の値とサイズを
並列ループの後で照合データファイルに退避する指示を
追加したシリアル変換プログラムを生成するとともに、
前記マルチタスクプログラムを入力して、参照している
データ配列の値とサイズを並列ループの前で前記照合デ
ータファイルに退避したシリアルプログラムを実行した
結果と照合し、定義しているデータ配列の値とサイズを
並列ループの後で前記照合データファイルに退避した前
記シリアルプログラムを実行した結果と照合する指示を
追加したマルチタスク変換プログラムを生成するプログ
ラム変換手段と、 前記シリアル変換プログラム実行時に、参照しているデ
ータ配列の値とサイズを並列ループの前で前記照合デー
タファイルに退避し、定義しているデータ配列の値とサ
イズを並列ループの後で前記照合データファイルに退避
する照合データ退避手段と、 前記マルチタスク変換プログラム実行時に、参照してい
るデータ配列の値とサイズを並列ループの前で、前記照
合データ退避手段が前記照合データファイルに退避した
前記シリアル変換プログラムが参照しているデータ配列
の値とサイズと一致するか否かを判定するとともに、定
義しているデータ配列の値とサイズを並列ループの後
で、前記照合データ退避手段が前記照合データファイル
に退避した前記シリアル変換プログラムが定義している
データ配列の値とサイズと一致するか否かを判定し、い
ずれかの判定において不一致の場合には、前記シリアル
プログラムが前記マルチタスクプログラムと等価ではな
い旨を出力装置へ出力するデータ照合手段とを備えたこ
とを特徴とするマルチタスクプログラムのデバッグシス
テム。
6. A multitask program in which a data array to be processed in a loop of a serial program is distributed and arranged in a memory on each processor of a distributed memory type multiprocessor system, and is rewritten so that the processors process in parallel. Is a debug system for a multi-task program that verifies the correctness of, by inputting the serial program, saving the value and size of the referenced data array in a collation data file before the parallel loop, and defining Generates a serial conversion program that adds an instruction to save the value and size of the existing data array to the collation data file after the parallel loop.
Input the multi-task program, collate the value and size of the referenced data array with the result of executing the serial program saved in the collation data file before the parallel loop, and define the value of the data array. And a program conversion means for generating a multitask conversion program with an instruction to compare the size and the size of the serial program saved in the collation data file after the parallel loop with the instruction, and refer to it when the serial conversion program is executed. Collation data saving means for saving the value and size of the data array being stored in the collation data file before the parallel loop, and saving the defined value and size of the data array in the collation data file after the parallel loop. , When executing the multitask conversion program, the value of the data array being referenced and the size Before the parallel loop, the collation data saving unit determines whether or not the value and size of the data array referred to by the serial conversion program saved in the collation data file match and define the definition. After the parallel loop of the value and size of the data array, it is determined whether or not the matching data saving means matches the value and size of the data array defined by the serial conversion program saved in the matching data file. A debug system for a multitask program, comprising data collating means for outputting to the output device that the serial program is not equivalent to the multitask program if any of the judgments does not match.
JP7232131A 1994-09-12 1995-09-11 Multitask program debugging method and debugging system Expired - Fee Related JP2738360B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7232131A JP2738360B2 (en) 1994-09-12 1995-09-11 Multitask program debugging method and debugging system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP6-216974 1994-09-12
JP21697494 1994-09-12
JP7232131A JP2738360B2 (en) 1994-09-12 1995-09-11 Multitask program debugging method and debugging system

Publications (2)

Publication Number Publication Date
JPH08137714A true JPH08137714A (en) 1996-05-31
JP2738360B2 JP2738360B2 (en) 1998-04-08

Family

ID=26521741

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7232131A Expired - Fee Related JP2738360B2 (en) 1994-09-12 1995-09-11 Multitask program debugging method and debugging system

Country Status (1)

Country Link
JP (1) JP2738360B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013008326A1 (en) * 2011-07-13 2013-01-17 富士通株式会社 Software verification method and software verification system
JPWO2013008326A1 (en) * 2011-07-13 2015-02-23 富士通株式会社 Software verification method and software verification system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5048018A (en) * 1989-06-29 1991-09-10 International Business Machines Corporation Debugging parallel programs by serialization

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5048018A (en) * 1989-06-29 1991-09-10 International Business Machines Corporation Debugging parallel programs by serialization

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013008326A1 (en) * 2011-07-13 2013-01-17 富士通株式会社 Software verification method and software verification system
JPWO2013008326A1 (en) * 2011-07-13 2015-02-23 富士通株式会社 Software verification method and software verification system

Also Published As

Publication number Publication date
JP2738360B2 (en) 1998-04-08

Similar Documents

Publication Publication Date Title
JP3654910B2 (en) Error correction method and apparatus in computer system
JPH04211830A (en) Parallel compiling system
KR20060103317A (en) Method and device for switching between at least two operating modes of a processor unit
US5799142A (en) Debugging method and debugging system for multi-task programs
CN110795326A (en) Code interception detection method, storage medium, electronic device and system
JP2738360B2 (en) Multitask program debugging method and debugging system
JPH01177165A (en) Definition-quotation relation checking system for array
JPH05334119A (en) Method for debugging program
JP2743889B2 (en) Method and apparatus for program evaluation
JPS63163636A (en) Executing system for parallel processing
JPS63289654A (en) Program branching instruction monitoring system
Elnashar et al. Two automated techniques for analyzing and debugging Mpi-based programs
JPH03288239A (en) Debugging method and device
JPS62100844A (en) Test system for information processor
JPH05127945A (en) Program execution situation analysis system
JPH05224908A (en) Program production system
JPH02307129A (en) Setting/deleting system for snap id output sentence
JPH05189217A (en) Job supporting system
JPH04336629A (en) Trap report analyzing tool
JPH04181326A (en) Compiling method for source program
JPH05143388A (en) Suspending system for parallel processing program
JPH03100837A (en) Detection system for shared data access
JPH09120383A (en) Data input and output method and device therefor
JPH07271605A (en) C language program debugging system
JPH05204698A (en) Debugger processing system

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19971216

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080116

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090116

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100116

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110116

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees