JPS63120338A - プログラム変換装置 - Google Patents
プログラム変換装置Info
- Publication number
- JPS63120338A JPS63120338A JP26692886A JP26692886A JPS63120338A JP S63120338 A JPS63120338 A JP S63120338A JP 26692886 A JP26692886 A JP 26692886A JP 26692886 A JP26692886 A JP 26692886A JP S63120338 A JPS63120338 A JP S63120338A
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic
- recurrent
- program
- loop
- buffer
- 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
Links
- 230000000306 recurrent effect Effects 0.000 abstract 10
- 238000001514 detection method Methods 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 1
Landscapes
- Complex Calculations (AREA)
- Devices For Executing Special Programs (AREA)
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明は並列に動作できる複数の演算処理装置を備え、
高速に処理を行う計算機システムで使用して効果をあげ
るために、プログラムを並列処理が可能なように変換す
るプログラム変換装置に関するものである。
高速に処理を行う計算機システムで使用して効果をあげ
るために、プログラムを並列処理が可能なように変換す
るプログラム変換装置に関するものである。
従来の技術
従来のプログラム変換装置では、再帰関係のないDOル
ープの並列化を行う、しかし、例えば下記のDOループ
は再帰演算となるが、変換装置は、再帰演算であること
を発見し、並列処理することをやめる。
ープの並列化を行う、しかし、例えば下記のDOループ
は再帰演算となるが、変換装置は、再帰演算であること
を発見し、並列処理することをやめる。
DO 10 I−1,N
C(1)−I*4
D (I) −1/2
A (1)−B (1−1)+C(r)+D(1)K−
mK*2 B (1) −B (I) *K C(1) −C(I) /2 D (I) −D (1) $3 10 C0NTINUE 発明が解決しようとする問題点 このような従来のプログラム変換装置では、DOループ
中に再帰演算が含まれる場合、まったく並列化できない
か、再帰関係が一文中にあられれる場合のみの並列化し
か行えなかった。そのためコーディングの改良によって
再帰演算部分以外が並列実行されるようなりoループで
も、そのまま逐次処理されるためプログラムの高速な実
行を妨げ、この解決には、人手による入念なプログラム
の見直しが必要という問題がある。
mK*2 B (1) −B (I) *K C(1) −C(I) /2 D (I) −D (1) $3 10 C0NTINUE 発明が解決しようとする問題点 このような従来のプログラム変換装置では、DOループ
中に再帰演算が含まれる場合、まったく並列化できない
か、再帰関係が一文中にあられれる場合のみの並列化し
か行えなかった。そのためコーディングの改良によって
再帰演算部分以外が並列実行されるようなりoループで
も、そのまま逐次処理されるためプログラムの高速な実
行を妨げ、この解決には、人手による入念なプログラム
の見直しが必要という問題がある。
本発明は上記問題点に鑑み、DO小ループ中再帰演算を
検出し、その部分のみ逐次に、他の部分は並列に実行す
るようなコードに変換するプログラム変換装置である。
検出し、その部分のみ逐次に、他の部分は並列に実行す
るようなコードに変換するプログラム変換装置である。
問題点を解決するための手段
上記問題点を解決するために本発明のプログラム変換装
置は、入出カプログラムを保持するためのバッファ、0
0文の検出装置、再帰演算の検出装置、および再帰演算
部逐次実行指定装置という構成を持つものである。
置は、入出カプログラムを保持するためのバッファ、0
0文の検出装置、再帰演算の検出装置、および再帰演算
部逐次実行指定装置という構成を持つものである。
作用
本発明は上記した構成によって、入力バッファのプログ
ラムから、DO文の検出装置によって検出された一連の
DOループは、ワークレジスタに格納され、再帰演算の
検出装置によって検出された再帰演算は、再帰演算部逐
次実行指定装置によってその部分のみ逐次処理されるよ
うにプログラムが変更されて出力バッファに出力される
ことを特徴とするプログラム変換装置である。
ラムから、DO文の検出装置によって検出された一連の
DOループは、ワークレジスタに格納され、再帰演算の
検出装置によって検出された再帰演算は、再帰演算部逐
次実行指定装置によってその部分のみ逐次処理されるよ
うにプログラムが変更されて出力バッファに出力される
ことを特徴とするプログラム変換装置である。
実施例
以下本発明の一実施例のプログラム変10装置について
、図面を参照しながら説明する。第1図は本発明の一実
施例の全体構成を示すブロック図で、1は入力バッファ
、2はDOループ検出装置、3はワークレジスタ、4は
再帰演n検出装置、5は再帰演算部逐次実行指定装置、
6は出力装置である。
、図面を参照しながら説明する。第1図は本発明の一実
施例の全体構成を示すブロック図で、1は入力バッファ
、2はDOループ検出装置、3はワークレジスタ、4は
再帰演n検出装置、5は再帰演算部逐次実行指定装置、
6は出力装置である。
第1図において、被変換プログラムは、まず入力バッフ
ァ1に読み込まれる。DOループ検出装置2は、プログ
ラムのDOループ以外の部分はそのまま出力バッファ6
に書き出し、DOループの部分はワーク1/ジスタ3に
書き出す。再帰演算検出装置4ば、DO小ループ中再帰
演算の有無を検出し、なければそのまま出カバソファ6
に書き出し、あれば再帰演算部逐次実行指定装置5に送
る。
ァ1に読み込まれる。DOループ検出装置2は、プログ
ラムのDOループ以外の部分はそのまま出力バッファ6
に書き出し、DOループの部分はワーク1/ジスタ3に
書き出す。再帰演算検出装置4ば、DO小ループ中再帰
演算の有無を検出し、なければそのまま出カバソファ6
に書き出し、あれば再帰演算部逐次実行指定装置5に送
る。
再帰演算部逐次実行指定装置5ば、再帰演算部の前後に
該再帰演算部が逐次処理されるようなコードを付与して
バッファ6に書き出す。
該再帰演算部が逐次処理されるようなコードを付与して
バッファ6に書き出す。
第2図は、先程のDOループが当プログラム変換装置に
よって変換された場合の実行経過を示す流れ図である。
よって変換された場合の実行経過を示す流れ図である。
ここでは、3つの演算処理装置で実行される場合を示し
ている。
ている。
発明の効果
以上述べてきたように、本発明によればDOループ中に
再帰演算を持つプログラムを複数の演算処理装置を持つ
計算機システムで実行する場合、従来のように逐次的に
処理を行ったり、人手によりプログラムを修正するので
はなく、DOループ中の再帰演算部のみ逐次的に処理さ
れるようなコードへ自動的に変換し、プログラムが高速
に実行できるという効果が得られる。
再帰演算を持つプログラムを複数の演算処理装置を持つ
計算機システムで実行する場合、従来のように逐次的に
処理を行ったり、人手によりプログラムを修正するので
はなく、DOループ中の再帰演算部のみ逐次的に処理さ
れるようなコードへ自動的に変換し、プログラムが高速
に実行できるという効果が得られる。
第1図は本発明の一実施例のシステム構成を示すブロッ
ク図、第2図は変換後のプログラムの実行経過を示す流
れ図である。 1・・・・・・入カバソファ、2・・・・・・DOルー
プ検出装置、3・・・・・・ワークレジスタ、4・・・
・・・再帰演算検出装置、5・・・・・・再帰演算部逐
次実行指定装置、6・・・・・・出力バッファ。 代理人の氏名 弁理士 中尾敏男 はか1名3″−ワー
クレジ゛スゲ 4−傭・jを膚隼F氾褒屓 5− ・ 好退吹実1せ綻ス1 第2図
ク図、第2図は変換後のプログラムの実行経過を示す流
れ図である。 1・・・・・・入カバソファ、2・・・・・・DOルー
プ検出装置、3・・・・・・ワークレジスタ、4・・・
・・・再帰演算検出装置、5・・・・・・再帰演算部逐
次実行指定装置、6・・・・・・出力バッファ。 代理人の氏名 弁理士 中尾敏男 はか1名3″−ワー
クレジ゛スゲ 4−傭・jを膚隼F氾褒屓 5− ・ 好退吹実1せ綻ス1 第2図
Claims (1)
- 入力プログラム中のDOループの有無を検出する手段と
、前記DOループ中における再帰演算の有無を検出する
手段と、再帰演算部分のみの逐次実行を指定する手段を
持ち、前記プログラム中の前記DOループを再帰演算部
分は逐次に他は並列に実行するように変換することを特
徴とするプログラム変換装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26692886A JPS63120338A (ja) | 1986-11-10 | 1986-11-10 | プログラム変換装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26692886A JPS63120338A (ja) | 1986-11-10 | 1986-11-10 | プログラム変換装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63120338A true JPS63120338A (ja) | 1988-05-24 |
Family
ID=17437630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP26692886A Pending JPS63120338A (ja) | 1986-11-10 | 1986-11-10 | プログラム変換装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63120338A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5247696A (en) * | 1991-01-17 | 1993-09-21 | Cray Research, Inc. | Method for compiling loops having recursive equations by detecting and correcting recurring data points before storing the result to memory |
US8433883B2 (en) | 2009-06-11 | 2013-04-30 | Cray Inc. | Inclusive “OR” bit matrix compare resolution of vector update conflict masks |
US8458685B2 (en) | 2009-06-12 | 2013-06-04 | Cray Inc. | Vector atomic memory operation vector update system and method |
US8583898B2 (en) | 2009-06-12 | 2013-11-12 | Cray Inc. | System and method for managing processor-in-memory (PIM) operations |
US8826252B2 (en) | 2009-06-12 | 2014-09-02 | Cray Inc. | Using vector atomic memory operation to handle data of different lengths |
US8954484B2 (en) | 2009-06-12 | 2015-02-10 | Cray Inc. | Inclusive or bit matrix to compare multiple corresponding subfields |
-
1986
- 1986-11-10 JP JP26692886A patent/JPS63120338A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5247696A (en) * | 1991-01-17 | 1993-09-21 | Cray Research, Inc. | Method for compiling loops having recursive equations by detecting and correcting recurring data points before storing the result to memory |
US8433883B2 (en) | 2009-06-11 | 2013-04-30 | Cray Inc. | Inclusive “OR” bit matrix compare resolution of vector update conflict masks |
US8458685B2 (en) | 2009-06-12 | 2013-06-04 | Cray Inc. | Vector atomic memory operation vector update system and method |
US8583898B2 (en) | 2009-06-12 | 2013-11-12 | Cray Inc. | System and method for managing processor-in-memory (PIM) operations |
US8826252B2 (en) | 2009-06-12 | 2014-09-02 | Cray Inc. | Using vector atomic memory operation to handle data of different lengths |
US8954484B2 (en) | 2009-06-12 | 2015-02-10 | Cray Inc. | Inclusive or bit matrix to compare multiple corresponding subfields |
US9547474B2 (en) | 2009-06-12 | 2017-01-17 | Cray Inc. | Inclusive or bit matrix to compare multiple corresponding subfields |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS63120338A (ja) | プログラム変換装置 | |
JPH05298052A (ja) | ウインドウシステムおよびイベント処理方法 | |
JPS583040A (ja) | 情報処理装置 | |
JPS6378231A (ja) | 部分的プログラム結合方式 | |
JPS62217325A (ja) | アセンブラコ−ド最適化方式 | |
JPS5922140A (ja) | 対話型コンパイル方式 | |
JPH01100632A (ja) | プログラム並列実行方法 | |
JPH025136A (ja) | 言語処理プログラムのエラー処理方式 | |
JPS6336337A (ja) | スカラ/ベクトル命令の融合スケジユ−リング処理方式 | |
JP3114884B2 (ja) | ファジィ推論処理コンパイルシステム | |
JPH11242598A (ja) | コンパイル方法およびコンパイル装置ならびにオブジェクトプログラム実行方法およびオブジェクトプログラム実行装置ならびにプログラム記憶媒体 | |
JPS61285539A (ja) | 情報処理装置 | |
JPS6349841A (ja) | プログラム自動変換装置 | |
JPH02181236A (ja) | デバッグ装置 | |
JP2851192B2 (ja) | 並列演算処理装置におけるキャリー付き加減算処理方式 | |
JPH04342038A (ja) | プログラム異常の解析方法 | |
JPH03255535A (ja) | 中央処理装置 | |
JPH03235135A (ja) | プログラムの自動検査方式 | |
JPH0548491B2 (ja) | ||
JPH04158446A (ja) | 並列化部分率の算出方式 | |
JPH01287744A (ja) | プログラム変換装置 | |
JPH03168836A (ja) | エミュレーションプロセッサ | |
JPS63284675A (ja) | ベクトルデ−タ処理装置 | |
JPH02165339A (ja) | コンパイル装置 | |
JPH0433137A (ja) | データ処理装置 |