JPH03282827A - プログラムの並列化支援方式 - Google Patents

プログラムの並列化支援方式

Info

Publication number
JPH03282827A
JPH03282827A JP2084148A JP8414890A JPH03282827A JP H03282827 A JPH03282827 A JP H03282827A JP 2084148 A JP2084148 A JP 2084148A JP 8414890 A JP8414890 A JP 8414890A JP H03282827 A JPH03282827 A JP H03282827A
Authority
JP
Japan
Prior art keywords
source program
parallelization
program
block
block structure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2084148A
Other languages
English (en)
Inventor
Tsugiichi Shibata
柴田 次一
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 JP2084148A priority Critical patent/JPH03282827A/ja
Publication of JPH03282827A publication Critical patent/JPH03282827A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はプログラムの並列化支援方式に関する。
〔従来の技術〕
従来、単一タスクで動作する利用者プログラムを複数の
タスクで並列に動作するように変換するためには、利用
者のプログラムを利用者が手作業でブロック構造に分解
し、分解された各ブロックの入力/出力データを解析し
た後、他のブロックと並列に動作が可能かどうかを調査
し、並列に動作可能ならばソースプログラム中の対応す
るブロックにコンパイラに対する指示文を挿入する。
〔発明が解決しようとする課題〕
上述した従来の方法では、単一タスクで動作する利用者
プログラムを並列化する際に利用者が手作業でプログラ
ムをブロック構造に分解し他のブロックと並列に動作す
ることが可能か調査する必要があるので、あるブロック
が他のブロックで更新したデータを参照/更新している
かどうかを利用者が調査することになる。したがって検
討のもれや誤った判断を行った場合には、並列化したプ
ログラムの実行結果が単一タスクで動作した場合と異る
ものになってしまうという欠点がある。
また、一般に並列化の対象となるプログラムは大規模な
ソースプログラムである場合が多く、これを並列化する
ために全てのソースプログラムを手作業でブロック構造
に分解するには多くの時間が必要となるという問題点が
ある。
〔課題を解決するための手段〕
本発明のプログラムの並列化支援方式は、単一タスクで
動作するソースプログラムを入力して前記ソースプログ
ラムの内容を解析してブロック構造ファイルを出力する
ソースプログラム解析部と、前記ブロック構造ファイル
を入力してブロック構造解析リストを出力するブロック
構造リスト出力部と、前記ブロック構造ファイルを入力
して指定のブロック群が並列に動作可能か否かを検証し
並列化可能ならば並列化情報を作成する並列化解析部と
、前記並列化情報と前記単一タスクで動作するソースプ
ログラムを入力して複数のタスクで動作する並列化ソー
スプログラムを作成するソースプログラム更新部と、端
末装置から動作を指示するコマンドを入力するコマンド
入力部とを有する。
〔実施例〕
次に本発明について図面を参照して説明する。
第1図は本発明の一実施例を示す構成図である。同図に
おいて本発明のプログラムの並列化支援方式1は端末装
置8から利用者がコマンドを入力し、ソースプログラム
7を入力して中間的なデータとして゛ブロック構造ファ
イル9を作成したり、5YSOUTフアイル10や端末
装置8にブロック構造解析リストを出力し、最終的に並
列化ソースプログラム11を出力する。
プログラムの並列化支援方式1が動作するとコマンド入
力部6が端末装置8ヘコマンドの促進を行う、利用者は
端末装置8より始めに単一タスクで動作するソースプロ
グラム7の格納場所やプログラム名を指示する。その後
、コマンド入力部6はプログラム解析部2へ制御を移す
プログラム解析部2はソースプログラム7を入力してブ
ロック構造に分解してブロック構造ファイル9へ出力し
、制御をコマンド入力部2へ戻す。ブロック構造解析リ
スト出力部3はコマンド入力部2が端末装置8から入力
したコマンドによって制御を渡され、ブロック構造ファ
イル9を入力し、5YSOUTフアイル10や端末装置
8ヘブロツク構造フアイル9の内容を編集出力する。
利用者は以降このブロック構造解析リストを参照しなが
ら並列化するブロック名をコマンド入力部8に指示する
並列化解析部4は利用者の指示によってコマンド人、山
部8から制御を渡される。並列化解析部4はコマンド入
力部8から並列化したいブロック群の名前が与えられ、
指定されたブロックの入力/出力データをブロック構造
解析ファイル9より取出し、並列に動作することが可能
かどうかの検証を行う、並列化が不可能ならばどの変更
のアクセスが並列化できない原因となっているかといっ
た並列化不可能な理由を端末装置8へ出力する。並列化
が可能ならば並列化するための情報とともにソースプロ
グラム更新部5へ制御を移す。
ソースプログラム更新部5は並列化解析部4からの情報
をもとに、ソースプログラム7を入力し並列化すべきブ
ロックのソース行を検索してコンパイラへの指示文を追
加して並列化ソースプログラム11を生成する。
第2図はソースプログラムおよびブロック構造ファイル
の例を示す説明図である。第2図(a)においてソース
プログラムの内容が、単純な処理の連続からなるブロッ
クA、処理の繰返しであるブロックB、ブロックBの中
の処理の連続であるブロックCから構成されているもの
とすると、第2図(b)に示すブロック構造解析ファイ
ルにはBLOCKOI、BLOCKO2,BLOCKO
3の3つのブロックが生成され、ブロックAはBLOC
KOlに、ブロックBはブロック02に。
ブロックCはBLOCKO3にそれぞれ対応する。ブロ
ック構造解析ファイルの各ブロックにはブロック名、ブ
ロックの処理内容、ブロックのソースプログラムでの先
頭と最後の行番号、入力データおよび出力データの名前
が格納される。
〔発明の効果〕
以上説明したように本発明は、従来利用者が手作業で行
っていた単一タスクで動作するプログラムの構造の分割
を自動的に行うことにより、並列化の作業を軽減させる
効果がある。
また、並列化作業に際の正当性の検証を行い並−ノ 列化できな膚理由を知ることができるので、利用者が誤
った並列化を行いプログラムの実行結果が並列化しない
場合と並列化した場合で異るような問題の発生を防ぐこ
とができる。
【図面の簡単な説明】
第1図は本発明の一実施例を示す構成図、第2図はソー
スプログラムおよびブロック構造解析ファイルの例を示
す説明図である。 1・・・プログラムの並列化支援方式、2・・・プログ
ラム解析部、3・・・ブロック構造解析リスト出力部、
4・・・並列化解析部、5・・・ソースプログラム更新
部、6・・・コマンド入力部、7・・・ソースプログラ
ム、9・・・ブロック構造解析ファイル、11・・・並
列化ソースプログラム。

Claims (1)

    【特許請求の範囲】
  1. 単一タスクで動作するソースプログラムを入力して前記
    ソースプログラムの内容を解析してブロック構造ファイ
    ルを出力するソースプログラム解析部と、前記ブロック
    構造ファイルを入力してブロック構造解析リストを出力
    するブロック構造リスト出力部と、前記ブロック構造フ
    ァイルを入力して指定のブロック群が並列に動作可能か
    否かを検証し並列化可能ならば並列化情報を作成する並
    列化解析部と、前記並列化情報と前記単一タスクで動作
    するソースプログラムを入力して複数のタスクで動作す
    る並列化ソースプログラムを作成するソースプログラム
    更新部と、端末装置から動作を指示するコマンドを入力
    するコマンド入力部とを有することを特徴とするプログ
    ラムの並列化支援方式。
JP2084148A 1990-03-30 1990-03-30 プログラムの並列化支援方式 Pending JPH03282827A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2084148A JPH03282827A (ja) 1990-03-30 1990-03-30 プログラムの並列化支援方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2084148A JPH03282827A (ja) 1990-03-30 1990-03-30 プログラムの並列化支援方式

Publications (1)

Publication Number Publication Date
JPH03282827A true JPH03282827A (ja) 1991-12-13

Family

ID=13822418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2084148A Pending JPH03282827A (ja) 1990-03-30 1990-03-30 プログラムの並列化支援方式

Country Status (1)

Country Link
JP (1) JPH03282827A (ja)

Similar Documents

Publication Publication Date Title
JPH02264329A (ja) プログラム自動生成装置
JPH03282827A (ja) プログラムの並列化支援方式
JPH11237982A (ja) ソフトウェア部品開発支援装置
JPS6232557A (ja) 通信プロトコ−ル変換装置
JP2765911B2 (ja) データ駆動型制御方法およびコンパイル装置
JP3637606B2 (ja) データ処理装置
JPH06230804A (ja) プログラム作成装置
JPH0250730A (ja) 共通機械語による言語変換方式
JP2861630B2 (ja) 接続構造解析器
JPS62135958A (ja) シミユレ−シヨン方式
JPH1173306A (ja) クライアント/サーバ・プログラム生成装置及びクライアント/サーバ・プログラム生成方法
JP2658060B2 (ja) 計画作成支援システム
JPH0540612A (ja) 計算機資産変換処理装置
JPS6234232A (ja) 簡易言語による帳票作成方式
JPH06236261A (ja) 手続き型言語プログラム・コンポーネントの分離方式
JPH0235521A (ja) パッチイメージの生成方式
JPH05233241A (ja) プログラム作成装置
JPH0287206A (ja) データ処理システム
JPH02130637A (ja) ソースコード翻訳方式
JPH064348A (ja) プログラムデバッグ方式
JPS61143859A (ja) フアイル定義方式
JPS6349840A (ja) コンパイルユニツト世代管理方式
JPH04353933A (ja) プログラム実行制御言語変換装置
JPH05241798A (ja) ライブラリ情報管理によるlm生成処理方式
JPH01147624A (ja) 言語処理系システム