JPS6319908B2 - - Google Patents
Info
- Publication number
- JPS6319908B2 JPS6319908B2 JP3119782A JP3119782A JPS6319908B2 JP S6319908 B2 JPS6319908 B2 JP S6319908B2 JP 3119782 A JP3119782 A JP 3119782A JP 3119782 A JP3119782 A JP 3119782A JP S6319908 B2 JPS6319908 B2 JP S6319908B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- intermediate code
- existence
- loop
- program
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
- Devices For Executing Special Programs (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】
(A) 発明の技術分野
本発明は、スカラ配列化による並列処理化処理
方式、特に複数の並列演算部をそなえたベクトル
処理プロセツサに対して、与えられたソース・プ
ログラムから目的プログラムを生成して供給する
コンパイラにおいて、単純変数をもつループに関
して、当該単純変数についてループの入口と出口
とにおけるビジー状態を調べて分類を行い、当該
分類にもとづいて夫々並列処理化のための処理を
行うようにしたスカラ配列化による並列化処理方
式に関するものである。
方式、特に複数の並列演算部をそなえたベクトル
処理プロセツサに対して、与えられたソース・プ
ログラムから目的プログラムを生成して供給する
コンパイラにおいて、単純変数をもつループに関
して、当該単純変数についてループの入口と出口
とにおけるビジー状態を調べて分類を行い、当該
分類にもとづいて夫々並列処理化のための処理を
行うようにしたスカラ配列化による並列化処理方
式に関するものである。
(B) 技術の背景と問題点
例えば、第1図Aに示す如く、ベクトルAに属
するエレメントa1,a2,…とベクトルBに属する
エレメントb1,b2,…との各エレメント相互を加
算して、エレメントc1,c2,…をもつベクトルC
を生成するような、ベクトル命令を実行するベク
トル処理プロセツサが存在している。第1図A図
示の場合、第i番目のエレメント相互の加算を行
なうか否かをマスク・エレメントm1,m2,…に
て指示するようにされており、第1図Bに一般化
して示す如き処理が行なわれる。
するエレメントa1,a2,…とベクトルBに属する
エレメントb1,b2,…との各エレメント相互を加
算して、エレメントc1,c2,…をもつベクトルC
を生成するような、ベクトル命令を実行するベク
トル処理プロセツサが存在している。第1図A図
示の場合、第i番目のエレメント相互の加算を行
なうか否かをマスク・エレメントm1,m2,…に
て指示するようにされており、第1図Bに一般化
して示す如き処理が行なわれる。
上記の如き処理を行なうベクトル処理プロセツ
サを有するデータ処理システムは、一実施例とし
て第2図図示の如きシステム構成をもつている。
図中の符号1は主記憶装置、2はメモリ制御装
置、3はベクトル処理プロセツサ、4はチヤネ
ル・プロセツサ、5は大記憶装置、6はスカラ処
理回路部、7はベクトル処理回路、8―0,8―
1,…は夫々浮動小数点データ・レジスタ、9―
0,9―1,…は夫々複数個のデータ(エレメン
ト・データ)を格納し得るベクトル・レジスタ、
10―0,10―1,…は夫々複数個のマスク・
データ(マスク・エレメント・データ)を格納し
得るマスク・レジスタ、11はベクトル長レジス
タであつて各ベクトルレジスタに格納されるエレ
メントの個数情報がセツトされるもの、12―
0,12―1は夫々メモリ・アクセス・パイプラ
イン、13は加減算パイプライン、14は乗算処
理パイプライン、15は除算処理パイプライン、
16はマスク処理パイプラインを表わしている。
サを有するデータ処理システムは、一実施例とし
て第2図図示の如きシステム構成をもつている。
図中の符号1は主記憶装置、2はメモリ制御装
置、3はベクトル処理プロセツサ、4はチヤネ
ル・プロセツサ、5は大記憶装置、6はスカラ処
理回路部、7はベクトル処理回路、8―0,8―
1,…は夫々浮動小数点データ・レジスタ、9―
0,9―1,…は夫々複数個のデータ(エレメン
ト・データ)を格納し得るベクトル・レジスタ、
10―0,10―1,…は夫々複数個のマスク・
データ(マスク・エレメント・データ)を格納し
得るマスク・レジスタ、11はベクトル長レジス
タであつて各ベクトルレジスタに格納されるエレ
メントの個数情報がセツトされるもの、12―
0,12―1は夫々メモリ・アクセス・パイプラ
イン、13は加減算パイプライン、14は乗算処
理パイプライン、15は除算処理パイプライン、
16はマスク処理パイプラインを表わしている。
上記の如きベクトル処理プロセツサが処理を実
行するに当つて、当該プロセツサが実行するに適
した形に、与えられたソース・プログラムをコン
パイルし目的プログラムを生成することが行なわ
れる。当該コンパイルを行なうコンパイラの構成
は第3図を参照して後述されるが、当該コンパイ
ラによるコンパイル処理に当つて、ベクトル処理
プロセツサによる処理が実行される際に、上述の
パイプライン演算部による処理を有効に活かし得
るように並列実行可能な形にコンパイルすること
が望まれる。
行するに当つて、当該プロセツサが実行するに適
した形に、与えられたソース・プログラムをコン
パイルし目的プログラムを生成することが行なわ
れる。当該コンパイルを行なうコンパイラの構成
は第3図を参照して後述されるが、当該コンパイ
ラによるコンパイル処理に当つて、ベクトル処理
プロセツサによる処理が実行される際に、上述の
パイプライン演算部による処理を有効に活かし得
るように並列実行可能な形にコンパイルすること
が望まれる。
しかし従来、単純変数(スカラ変数ともいう)
をもつループに関してループの入口や出口におい
て当該単純変数がビジー状態即ちその入口や出口
において当該単純変数が活きている場合において
は、第6図に示す如く入口ビジーであつて「総
和」と認識されたもの(本発明にいう分類「1」
のもの)以外は並列実行不可であるものとして取
扱われていた。即ちベクトル処理プロセツサがス
カラ命令によつて処理する形にコンパイルされて
いた。
をもつループに関してループの入口や出口におい
て当該単純変数がビジー状態即ちその入口や出口
において当該単純変数が活きている場合において
は、第6図に示す如く入口ビジーであつて「総
和」と認識されたもの(本発明にいう分類「1」
のもの)以外は並列実行不可であるものとして取
扱われていた。即ちベクトル処理プロセツサがス
カラ命令によつて処理する形にコンパイルされて
いた。
なおビジーであることについて、第19図に示
す如き処理が存在している場合を例に挙げると、
即ち、図示においてデータXが定義され、次い
でにおいてデータXが参照され、またにおい
てデータXが参照され、更ににおいてデータX
が定義されている如き場合を例に挙げると、に
おいて定義されたデータXの値がにおいて参
照されるために、図示からまでの間ではデー
タXはビジーであるという。これに対して、図示
ととの間では、以降までの間においてデ
ータXが参照されることがなければ、において
データXが再定義されるためにで定義された値
は保持しておく意味がない。このために、ビジー
でなくなる。
す如き処理が存在している場合を例に挙げると、
即ち、図示においてデータXが定義され、次い
でにおいてデータXが参照され、またにおい
てデータXが参照され、更ににおいてデータX
が定義されている如き場合を例に挙げると、に
おいて定義されたデータXの値がにおいて参
照されるために、図示からまでの間ではデー
タXはビジーであるという。これに対して、図示
ととの間では、以降までの間においてデ
ータXが参照されることがなければ、において
データXが再定義されるためにで定義された値
は保持しておく意味がない。このために、ビジー
でなくなる。
(C) 発明の目的と構成
本発明は、上記の点について検討を進め、単純
変数の存在態様が予め定められた分類に該当する
ものについて並列実行化を促進するようにするこ
とを目的としており、(i)ループの入口と出口とに
おける単純変数のビジー状態を調べ、(ii)当該単純
変数の存在態様を分類し、(iii)分類結果に応じて
夫々の形で単純変数配列化を行つて、並列実行化
を図るようにしたことを特徴としている。以下図
面を参照しつつ説明する。
変数の存在態様が予め定められた分類に該当する
ものについて並列実行化を促進するようにするこ
とを目的としており、(i)ループの入口と出口とに
おける単純変数のビジー状態を調べ、(ii)当該単純
変数の存在態様を分類し、(iii)分類結果に応じて
夫々の形で単純変数配列化を行つて、並列実行化
を図るようにしたことを特徴としている。以下図
面を参照しつつ説明する。
(D) 発明の実施例
第3図は本発明に用いるコンパイラの一実施例
構成、第4図は本発明においてソース・プログラ
ムを中間コードに移してゆく態様を説明する説明
図、第5図はソース・プログラムをベクトル化し
てゆく態様を説明する説明図、第6図は従来から
並列実行可能とされていたループの態様、第7図
はベクトル化部における本発明に直接関連する部
分の一実施例フローチヤート、第8図は単純変数
の存在態様を説明する説明図、第9図ないし第1
3図は夫々本発明にいう一実施例分類別処理態様
を示す。また第14図ないし第15図は順に夫々
本発明にいう分類「1」ないし分類「5」に対応
した所の変形の態様例を示している。
構成、第4図は本発明においてソース・プログラ
ムを中間コードに移してゆく態様を説明する説明
図、第5図はソース・プログラムをベクトル化し
てゆく態様を説明する説明図、第6図は従来から
並列実行可能とされていたループの態様、第7図
はベクトル化部における本発明に直接関連する部
分の一実施例フローチヤート、第8図は単純変数
の存在態様を説明する説明図、第9図ないし第1
3図は夫々本発明にいう一実施例分類別処理態様
を示す。また第14図ないし第15図は順に夫々
本発明にいう分類「1」ないし分類「5」に対応
した所の変形の態様例を示している。
第3図において、17は大記憶装置に格納され
ているソース・プログラム、18はコンパイラ、
19はコンパイルされて大記憶装置上に格納され
る目的プログラム、20はソース解釈部、21は
記憶域割付け部、22はベクトル化部、23は中
間コード最適化部、24はレジスタ使用決定部、
25は目的プログラム出力部を表わしている。
ているソース・プログラム、18はコンパイラ、
19はコンパイルされて大記憶装置上に格納され
る目的プログラム、20はソース解釈部、21は
記憶域割付け部、22はベクトル化部、23は中
間コード最適化部、24はレジスタ使用決定部、
25は目的プログラム出力部を表わしている。
コンパイラ18は、大記憶装置からソース・プ
ログラム17を取込んで、所望の目的プログラム
19を生成する。このとき図示の各部は次のよう
な処理を行う。
ログラム17を取込んで、所望の目的プログラム
19を生成する。このとき図示の各部は次のよう
な処理を行う。
即ち、ソース解釈部20はソース・プログラム
17を大記憶装置から取込み、文解釈を行つて中
間コード(テキスト)に展開する。例えばソー
ス・プログラムが第4図図示左側の如き場合に図
示右側に示す中間コードに展開する。記憶域割付
け部21はプログラム内に出現する各種データに
対応して記憶域内番地を割当てる。ベクトル化部
22は、プログラム中のループ構造を検出し、並
列実行可能部分を認識し第5図図示の如く中間コ
ード変更を行う。中間コード最適化部23は、中
間コードのレベルで、第2図図示の如きベクトル
処理プロセツサを有効に利用するための最適化を
施す。レジスタ使用決定部24は、中間コードに
現われたデータに対して、ベクトル処理プロセツ
サ上の資源(レジスタ)を割当てる。そして目的
プログラム出力部25は機械命令語を大記憶装置
へ出力しかつ命令語レベルでの最適化を行う。
17を大記憶装置から取込み、文解釈を行つて中
間コード(テキスト)に展開する。例えばソー
ス・プログラムが第4図図示左側の如き場合に図
示右側に示す中間コードに展開する。記憶域割付
け部21はプログラム内に出現する各種データに
対応して記憶域内番地を割当てる。ベクトル化部
22は、プログラム中のループ構造を検出し、並
列実行可能部分を認識し第5図図示の如く中間コ
ード変更を行う。中間コード最適化部23は、中
間コードのレベルで、第2図図示の如きベクトル
処理プロセツサを有効に利用するための最適化を
施す。レジスタ使用決定部24は、中間コードに
現われたデータに対して、ベクトル処理プロセツ
サ上の資源(レジスタ)を割当てる。そして目的
プログラム出力部25は機械命令語を大記憶装置
へ出力しかつ命令語レベルでの最適化を行う。
ベクトル処理プロセツサを稼動させるためのコ
ンパイラは第3図図示の如き構成をもつており、
上記ベクトル化部において本発明にいう並列実行
可能なものについてベクトライズ(並列実行化)
してゆく。
ンパイラは第3図図示の如き構成をもつており、
上記ベクトル化部において本発明にいう並列実行
可能なものについてベクトライズ(並列実行化)
してゆく。
しかし、従来、ループ内に単純変数をもちかつ
当該単純変数がループの入口および/または出口
においてビジー状態となつているものについて
は、第6図図示の如く予め定められた形態をもつ
もの以外は、並列実行不可であるとされていた。
当該単純変数がループの入口および/または出口
においてビジー状態となつているものについて
は、第6図図示の如く予め定められた形態をもつ
もの以外は、並列実行不可であるとされていた。
本発明においては、第3図図示のベクトル化部
22において、第7図図示の如き処理を行わせる
ようにして、単純変数の存在態様を分類し、分類
された形のループについて、単純変数を夫々の形
で配列化し、並列実行可能なものとしてコンパイ
ルするようにしている。即ち、 (1) 与えられたソース・プログラムに対応して、
DOループの存在を検出し、 (2) 当該ループ内で定義される単純変数の存在を
検出して取出す。
22において、第7図図示の如き処理を行わせる
ようにして、単純変数の存在態様を分類し、分類
された形のループについて、単純変数を夫々の形
で配列化し、並列実行可能なものとしてコンパイ
ルするようにしている。即ち、 (1) 与えられたソース・プログラムに対応して、
DOループの存在を検出し、 (2) 当該ループ内で定義される単純変数の存在を
検出して取出す。
(3) 取出された単純変数について、第8図に示す
如く、ループの入口または出口におけるビジー
状態を調べると共に、当該単純変数の存在態様
にもとづいて分類を行う。
如く、ループの入口または出口におけるビジー
状態を調べると共に、当該単純変数の存在態様
にもとづいて分類を行う。
(4) 分類不可であるものについては、当該ループ
の並列実行化ができないものとして、スカラ命
令による処理実行の形でコンパイルが進められ
る。
の並列実行化ができないものとして、スカラ命
令による処理実行の形でコンパイルが進められ
る。
(5) 分類可能なものについては、第9図ないし第
13図に示す形で、夫々の分類に応じた形の単
純変数配列化を行う。即ち分類別処理を行う。
13図に示す形で、夫々の分類に応じた形の単
純変数配列化を行う。即ち分類別処理を行う。
(6) 1つの単純変数について分類別処理が行われ
ると、次にチエツクすべき単純変数があれば、
これについて処理が繰返される。
ると、次にチエツクすべき単純変数があれば、
これについて処理が繰返される。
(7) そして、上記分類可能なループについては、
ベクトル化部22における処理機能によつて、
ベクトライズされてゆく。
ベクトル化部22における処理機能によつて、
ベクトライズされてゆく。
第8図は単純変数の存在態様を説明する説明図
を示し、1つの単純変数がループの入口または出
口においてビジー状態にあるか否かにもとづい
て、図示の4個の枠内のいずれかが調べられる。
そして、 (i) 入口でビジーでありかつ出口でビジーである
ものについて、分類「1」と分類「2」と分類
「3」と「その他……分類不能」とに区分され、 (ii) 入口でビジーでありかつ出口でビジーでない
ものについて、「分類不能」とされ、 (iii) 入口でビジーでなくかつ出口においてビジー
であるものについて、分類「4」とされ、 (iv) 入口でビジーでなくかつ出口でもビジーでな
いものについて、分類「5」とされる。
を示し、1つの単純変数がループの入口または出
口においてビジー状態にあるか否かにもとづい
て、図示の4個の枠内のいずれかが調べられる。
そして、 (i) 入口でビジーでありかつ出口でビジーである
ものについて、分類「1」と分類「2」と分類
「3」と「その他……分類不能」とに区分され、 (ii) 入口でビジーでありかつ出口でビジーでない
ものについて、「分類不能」とされ、 (iii) 入口でビジーでなくかつ出口においてビジー
であるものについて、分類「4」とされ、 (iv) 入口でビジーでなくかつ出口でもビジーでな
いものについて、分類「5」とされる。
なお、上記分類「2」において「アーテイキユ
レーシヨンの位置」とはループを実行するときに
必らず通る部分を意味している。今第20図に示
す如き処理ループが存在するものとしたとき、図
示ハツチングで示す部分がアーテイキユレーシヨ
ンの位置である。そして、図示やで示す部分
は、条件によつて実行したりしなかつたりするこ
とから、アーテイキユレーシヨンの位置とは言わ
ない。
レーシヨンの位置」とはループを実行するときに
必らず通る部分を意味している。今第20図に示
す如き処理ループが存在するものとしたとき、図
示ハツチングで示す部分がアーテイキユレーシヨ
ンの位置である。そして、図示やで示す部分
は、条件によつて実行したりしなかつたりするこ
とから、アーテイキユレーシヨンの位置とは言わ
ない。
分類「1」の場合には、第9図図示の如く、配
列化を行わない。
列化を行わない。
分類「2」の場合には、第10図図示の如く、
単純変数に対応して配列VTを用意し、最初の定
義の存在位置に応じて、単純変数をVT(I)また
VT(I+1)で置換するなどを行う。なお上記
配列VTは配列ベクトル・テンポラリであり、い
わば記憶域に置く配列ベクトル・データである。
なお当該配列VTについては、コンパイルなどに
当つてベクトル・レジスタを割当てることはない
と考えてよい。
単純変数に対応して配列VTを用意し、最初の定
義の存在位置に応じて、単純変数をVT(I)また
VT(I+1)で置換するなどを行う。なお上記
配列VTは配列ベクトル・テンポラリであり、い
わば記憶域に置く配列ベクトル・データである。
なお当該配列VTについては、コンパイルなどに
当つてベクトル・レジスタを割当てることはない
と考えてよい。
また説明中に示す添字Iは、例えば、
DO 10 I=1、N
:
:
(DOループ本体)
:
:
10 CONTINUE
などの形で与えるDOループの制御変数(DO変
数)である。また添字Kは配列VTを制御するた
めに仮に導入した単純変数であり、例えば K=1 DO 10 I=1、N : : VT(K)=……… K=K+1 : : 10 CONTINUE などの形で利用されるものである。
数)である。また添字Kは配列VTを制御するた
めに仮に導入した単純変数であり、例えば K=1 DO 10 I=1、N : : VT(K)=……… K=K+1 : : 10 CONTINUE などの形で利用されるものである。
分類「3」の場合には、第11図図示の如く、
最初の定義の存在位置に応じて、単純変数をVT
(K)またはVT(K+1)で置換するなどを行う。
最初の定義の存在位置に応じて、単純変数をVT
(K)またはVT(K+1)で置換するなどを行う。
分類「4」の場合には、第12図図示の如く、
単純変数をVT(I)で置換するなどを行う。
単純変数をVT(I)で置換するなどを行う。
分類「5」の場合には、第13図図示の如く、
単純変数をVT(I)で置換するようにする。
単純変数をVT(I)で置換するようにする。
なお第14図ないし第48図は順に夫々上記分
類「1」ないし「5」に対応した所の変形の態様
例を示している。
類「1」ないし「5」に対応した所の変形の態様
例を示している。
(E) 発明の効果
以上説明した如く、本発明によれば、単純変数
を含むループについて並列実行化を促進すること
ができ、ベクトル処理プロセツサによる処理実行
に際して高速化を図ることが可能となる。
を含むループについて並列実行化を促進すること
ができ、ベクトル処理プロセツサによる処理実行
に際して高速化を図ることが可能となる。
第1図はベクトル命令に対応した処理を概念的
に説明する説明図、第2図は本発明にいうベクト
ル処理プロセツサを有する処理システムの一実施
例、第3図は本発明に用いるコンパイラの一実施
例構成、第4図はソース・プログラムを中間コー
ドに移してゆく態様を説明する説明図、第5図は
ソース・プログラムをベクトル化してゆく態様を
説明する説明図、第6図は従来から並列実行可能
とされていたループの態様、第7図はベクトル化
部における本発明に直接関連する部分の一実施例
フローチヤート、第8図は単純変数の存在態様を
説明する説明図、第9図ないし第13図は夫々本
発明にいう一実施例分類別処理態様を示す。また
第14図ないし第18図は順に夫々本発明にいう
分類「1」ないし分類「5」に対応した所の変形
の態様例、第19図はビジー状態を説明する説明
図、第20図はアーテイキユレーシヨンを説明す
る説明図である。 図中、1は主記憶装置、2はメモリ制御装置、
3はベクトル処理プロセツサ、4はチヤネル・プ
ロセツサ、5は大記憶装置、9はベクトルレジス
タ、10はマスク・レジスタ、11ないし16は
夫々パイプライン演算部、17はソース・プログ
ラム、18はコンパイラ、19は目的プログラ
ム、20はソース解釈部、21は記憶割付け部、
22はベクトル化部、23は中間コード最適化
部、24はレジスタ使用決定部、25は目的プロ
グラム出力部を表わしている。
に説明する説明図、第2図は本発明にいうベクト
ル処理プロセツサを有する処理システムの一実施
例、第3図は本発明に用いるコンパイラの一実施
例構成、第4図はソース・プログラムを中間コー
ドに移してゆく態様を説明する説明図、第5図は
ソース・プログラムをベクトル化してゆく態様を
説明する説明図、第6図は従来から並列実行可能
とされていたループの態様、第7図はベクトル化
部における本発明に直接関連する部分の一実施例
フローチヤート、第8図は単純変数の存在態様を
説明する説明図、第9図ないし第13図は夫々本
発明にいう一実施例分類別処理態様を示す。また
第14図ないし第18図は順に夫々本発明にいう
分類「1」ないし分類「5」に対応した所の変形
の態様例、第19図はビジー状態を説明する説明
図、第20図はアーテイキユレーシヨンを説明す
る説明図である。 図中、1は主記憶装置、2はメモリ制御装置、
3はベクトル処理プロセツサ、4はチヤネル・プ
ロセツサ、5は大記憶装置、9はベクトルレジス
タ、10はマスク・レジスタ、11ないし16は
夫々パイプライン演算部、17はソース・プログ
ラム、18はコンパイラ、19は目的プログラ
ム、20はソース解釈部、21は記憶割付け部、
22はベクトル化部、23は中間コード最適化
部、24はレジスタ使用決定部、25は目的プロ
グラム出力部を表わしている。
Claims (1)
- 1 複数の並列演算部をそなえると共に複数個の
レジスタを少なくともそなえてベクトル命令を実
行するベクトル処理プロセツサに対して、与えら
れたソース・プログラムから目的プログラムを生
成して供給するコンパイラにおいて、上記ソー
ス・プログラムの文解釈を行つて中間コードに展
開するソース解釈部、プログラム中に出現する各
種データに記憶域内番地を割り当てる記憶域割付
け部、プログラム中のループ構造を検出して並列
実行可能部分の認識を行いかつ上記中間コード変
更を行うベクトル化部、中間コードのレベルで上
記ベクトル処理プロセツサを有効に利用するため
の最適化を施す中間コード最適化部、中間コード
に現われたデータに実際の資源を割当てるレジス
タ使用決定部、および目的プログラム出力部をそ
なえてなり、更に、上記ベクトル化部は、ループ
の存在を検出すると共にループ内で定義される単
純変数の存在を検出し、次いで当該単純変数のル
ープの入口と出口とにおけるビジー状態にもとづ
いて当該単純変数の存在態様を分類するよう構成
され、各分類された単純変数の存在態様にもとづ
いて夫々の分類に対応した形の単純変数配列化を
行う分類別処理を行つて並列実行化を促進するよ
うにしたことを特徴とするスカラ配列化による並
列化処理方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3119782A JPS58149569A (ja) | 1982-02-27 | 1982-02-27 | スカラ配列化による並列化処理方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3119782A JPS58149569A (ja) | 1982-02-27 | 1982-02-27 | スカラ配列化による並列化処理方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS58149569A JPS58149569A (ja) | 1983-09-05 |
| JPS6319908B2 true JPS6319908B2 (ja) | 1988-04-25 |
Family
ID=12324690
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3119782A Granted JPS58149569A (ja) | 1982-02-27 | 1982-02-27 | スカラ配列化による並列化処理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS58149569A (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2794523B2 (ja) * | 1993-11-26 | 1998-09-10 | 日本アイ・ビー・エム株式会社 | アレイ関数をもつプログラミング言語におけるインライン展開方法 |
-
1982
- 1982-02-27 JP JP3119782A patent/JPS58149569A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS58149569A (ja) | 1983-09-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Ackerman | Data flow languages | |
| US4710872A (en) | Method for vectorizing and executing on an SIMD machine outer loops in the presence of recurrent inner loops | |
| US6550059B1 (en) | Method for generating optimized vector instructions from high level programming languages | |
| US5339429A (en) | Parallel processing system and compiling method used therefor | |
| US5852734A (en) | Method and compiler for parallel execution of a program | |
| Granston et al. | Detecting redundant accesses to array data | |
| TWI733798B (zh) | 在執行向量操作時管理位址衝突的設備及方法 | |
| JP2500079B2 (ja) | プログラムの最適化方法及びコンパイラ・システム | |
| JPH05143332A (ja) | 命令スケジユーラを備えたコンピユータ・システム及び入力命令シーケンスを再スケジユールする方法 | |
| Nicolau | Loop quantization: A generalized loop unwinding technique | |
| JPS6319908B2 (ja) | ||
| Treleaven et al. | A multi-processor reduction machine for user-defined reduction languages. | |
| Gaudiot et al. | Performance evaluation of a simulated data-flow computer with low-resolution actors | |
| JPH06103462B2 (ja) | ベクトル・レングス制御範囲分割処理方式 | |
| JP3196625B2 (ja) | 並列化コンパイル方式 | |
| JPH0346863B2 (ja) | ||
| JPS6321946B2 (ja) | ||
| JPS6319906B2 (ja) | ||
| JPH037989B2 (ja) | ||
| JPS62204374A (ja) | 2倍演算最適化処理方式 | |
| JPH046020B2 (ja) | ||
| Williams et al. | Genetic compilers: A new technique for automatic parallelisation | |
| JPH0152779B2 (ja) | ||
| Burkhardt | Automation of program speed-up on parallel-processor computers | |
| JP2870218B2 (ja) | 並列実行命令列生成方式 |