JPH0754511B2 - ベクトル化処理方式 - Google Patents
ベクトル化処理方式Info
- Publication number
- JPH0754511B2 JPH0754511B2 JP21606888A JP21606888A JPH0754511B2 JP H0754511 B2 JPH0754511 B2 JP H0754511B2 JP 21606888 A JP21606888 A JP 21606888A JP 21606888 A JP21606888 A JP 21606888A JP H0754511 B2 JPH0754511 B2 JP H0754511B2
- Authority
- JP
- Japan
- Prior art keywords
- loop
- program
- length
- vector
- vectorizable
- 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 - Lifetime
Links
Landscapes
- Complex Calculations (AREA)
- Devices For Executing Special Programs (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンパイラにおけるベクトル化処理方式に関
し、特に作業ベクトルを用いてループ分割を行い、ベク
トル化するときの方式に関するものである。
し、特に作業ベクトルを用いてループ分割を行い、ベク
トル化するときの方式に関するものである。
ベクトル演算機能を備えた電子計算機システムでは、複
数の規則的に並んだデータ列(ベクトルデータ)間の演
算をベクトル命令によって一度に高速に実行できるた
め、電子計算機システムの性能を充分発揮するためにも
ベクトル実行できるプログラム部分はベクトル命令に置
き換えることが好ましく、そのため、コンパイル方式の
高級言語(例えばFORTRAN)で記述されたソースプログ
ラムをコンパイルして目的プログラムを生成する際に、
プログラムを解析してベクトル命令への置き換え(ベク
トル化)を行うようにしている。なお、ベクトル化が可
能な部分は、ソースプログラム上では一般にループ構造
で表現されている。
数の規則的に並んだデータ列(ベクトルデータ)間の演
算をベクトル命令によって一度に高速に実行できるた
め、電子計算機システムの性能を充分発揮するためにも
ベクトル実行できるプログラム部分はベクトル命令に置
き換えることが好ましく、そのため、コンパイル方式の
高級言語(例えばFORTRAN)で記述されたソースプログ
ラムをコンパイルして目的プログラムを生成する際に、
プログラムを解析してベクトル命令への置き換え(ベク
トル化)を行うようにしている。なお、ベクトル化が可
能な部分は、ソースプログラム上では一般にループ構造
で表現されている。
ところで、ベクトル化がそのまま可能なループの他に、
ベクトル化可能部分とベクトル化不可能部分とを含むル
ープがあり、そのようなループをベクトル化する場合に
は、そのループをベクトル化可能部分とベクトル化不可
能部分とに分け、別々のループに分割した上で、ベクト
ル化可能部分に対してはベクトル実行するプログラム部
分を生成し、ベクトル化不可能部分に対してはスカラ実
行するプログラム部分を生成し、両者を含んだ目的プロ
グラムを出力するようにしている。
ベクトル化可能部分とベクトル化不可能部分とを含むル
ープがあり、そのようなループをベクトル化する場合に
は、そのループをベクトル化可能部分とベクトル化不可
能部分とに分け、別々のループに分割した上で、ベクト
ル化可能部分に対してはベクトル実行するプログラム部
分を生成し、ベクトル化不可能部分に対してはスカラ実
行するプログラム部分を生成し、両者を含んだ目的プロ
グラムを出力するようにしている。
しかしながら、分割点にまたがって定義・参照されてい
る変数が存在する場合には、そのままでは分割は行え
ず、そのため、従来、そのような変数に対しては、ルー
プ長と等しいか、それ以上の長さ(コンパイル時点でル
ープ長が不明の場合にはコンパイラが仮定した長さ)を
持つ作業ベクトルを割り当て、変数の定義・参照を作業
ベクトルの定義・参上に置き換えることにより、変数の
定義・参照関係を分割に適するように変え、ベクトル化
を促進していた。
る変数が存在する場合には、そのままでは分割は行え
ず、そのため、従来、そのような変数に対しては、ルー
プ長と等しいか、それ以上の長さ(コンパイル時点でル
ープ長が不明の場合にはコンパイラが仮定した長さ)を
持つ作業ベクトルを割り当て、変数の定義・参照を作業
ベクトルの定義・参上に置き換えることにより、変数の
定義・参照関係を分割に適するように変え、ベクトル化
を促進していた。
第3図はFORTRAN言語で記述されたソースプログラム中
のDOループの一例であり、ループ中にベクトル化可能部
分とベクトル化不可能部分とを含むと共に、ベクトル化
可能部分とベクトル化不可能部分とを分割した際に分割
点にまたがって定義・参照されている変数が存在する場
合の例である。なお、このDOループは、 「配列A,B,C,DのI番目の要素A(I),B(I),C
(I),D(I)について、要素A(I),B(I)の積を
変数Xに格納し、要素C(I),D(I)の積を変数Yに
格納し、変数X,Yの値を出力する。」 という処理を1番目の要素からN番目の要素まで繰り返
し行うという処理手順を記述している。
のDOループの一例であり、ループ中にベクトル化可能部
分とベクトル化不可能部分とを含むと共に、ベクトル化
可能部分とベクトル化不可能部分とを分割した際に分割
点にまたがって定義・参照されている変数が存在する場
合の例である。なお、このDOループは、 「配列A,B,C,DのI番目の要素A(I),B(I),C
(I),D(I)について、要素A(I),B(I)の積を
変数Xに格納し、要素C(I),D(I)の積を変数Yに
格納し、変数X,Yの値を出力する。」 という処理を1番目の要素からN番目の要素まで繰り返
し行うという処理手順を記述している。
従来のコンパイラは、このままではこのDOループをベク
トル化することができないので、ベクトル化可能部分 X=A(I)*B(I) Y=C(I)*D(I) と、ベクトル化不可能部分 WRITE(6,*)X,Y とを分割して別のループとし、分割点にまたがって定義
されている変数X,Yをそれぞれ作業ベクトルWX,WYに置き
換え、第4図に示すように、ベクトル化可能部分 WX(I)=A(I)*B(I) WY(I)=C(I)*D(I) を含むループをベクトル実行するプログラム部分と、
ベクトル化不可能部分 WRITE(6,*)WX(I),WY(I) を含むループをスカラ実行するプログラム部分とを含
む目的プログラムを生成するようにしていた。
トル化することができないので、ベクトル化可能部分 X=A(I)*B(I) Y=C(I)*D(I) と、ベクトル化不可能部分 WRITE(6,*)X,Y とを分割して別のループとし、分割点にまたがって定義
されている変数X,Yをそれぞれ作業ベクトルWX,WYに置き
換え、第4図に示すように、ベクトル化可能部分 WX(I)=A(I)*B(I) WY(I)=C(I)*D(I) を含むループをベクトル実行するプログラム部分と、
ベクトル化不可能部分 WRITE(6,*)WX(I),WY(I) を含むループをスカラ実行するプログラム部分とを含
む目的プログラムを生成するようにしていた。
第5図は生成された目的プログラムの構造を概念的に示
した図であり、第5図のプログラム部分は第4図のル
ープに対応しており、ベクトル命令で高速に実行が可
能な部分である。また、第5図のプログラム部分は第
4図のループに対応しており、スカラ命令でN回繰り
返される部分である。
した図であり、第5図のプログラム部分は第4図のル
ープに対応しており、ベクトル命令で高速に実行が可
能な部分である。また、第5図のプログラム部分は第
4図のループに対応しており、スカラ命令でN回繰り
返される部分である。
従来のベクトル化処理方式は上述したように実行される
ものであり、ベクトル化の促進に役立つものであるが、
ループ長と同じかそれ以上の長さを持つ作業ベクトルが
必要となることから、次のような欠点があった。
ものであり、ベクトル化の促進に役立つものであるが、
ループ長と同じかそれ以上の長さを持つ作業ベクトルが
必要となることから、次のような欠点があった。
(1)ループ長が非常に長い場合、あるいは、作業ベク
トルが同時に多数必要とされる場合にあっては、作業ベ
クトル領域のサイズが大きくなり、システム中の他のプ
ログラムで利用可能なメモリを圧追する。
トルが同時に多数必要とされる場合にあっては、作業ベ
クトル領域のサイズが大きくなり、システム中の他のプ
ログラムで利用可能なメモリを圧追する。
(2)ループ長がコンパイル時に不明の場合はコンパイ
ラが仮定した長さの作業ベクトルが設定されるが、実際
の動作においてその設定値より長いループ長で実行され
ると、正常に動作が行われない。
ラが仮定した長さの作業ベクトルが設定されるが、実際
の動作においてその設定値より長いループ長で実行され
ると、正常に動作が行われない。
(3)実行時にループ長が変わる場合は、そのループの
取り得る最大の長さで作業ベクトルを割り当てておく必
要があるため、ループ長の変動が大きい場合は作業ベク
トルとして割り当てられた領域の使用効率が悪い。
取り得る最大の長さで作業ベクトルを割り当てておく必
要があるため、ループ長の変動が大きい場合は作業ベク
トルとして割り当てられた領域の使用効率が悪い。
本発明は上記の点に鑑み提案されたものであり、その目
的とするところは、作業ベクトルの長さの長・短・既知
・不明および一定・可変に影響されないベクトル化処理
方式を提供することにある。
的とするところは、作業ベクトルの長さの長・短・既知
・不明および一定・可変に影響されないベクトル化処理
方式を提供することにある。
本発明は上記の目的を達成するため、コンパイル方式の
高級言語で記述されたソースプログラム中のループを検
出・解析してベクトル化可能部分とベクトル化不可能部
分とに対応した別々のループに分割し、分割点にまたが
って定義・参照されている変数に作業ベクトルを割り当
て、ベクトル実行するプログラム部分とスカラ実行する
プログラム部分とから構成される目的プログラムを生成
するベクトル化処理方式において、 目的プログラム中に、コンパイラが設定した所定の長さ
の作業ベクトル領域を確保するプログラム部分と、実際
の長さが前記所定の長さを越える場合に新たに作業ベク
トル領域を動的に確保して割り当てるプログラム部分
と、新たに割り当てた作業ベクトル領域が不要になった
場合に当該作業ベクトル領域を解放するプログラム部分
とを挿入するようにしている。
高級言語で記述されたソースプログラム中のループを検
出・解析してベクトル化可能部分とベクトル化不可能部
分とに対応した別々のループに分割し、分割点にまたが
って定義・参照されている変数に作業ベクトルを割り当
て、ベクトル実行するプログラム部分とスカラ実行する
プログラム部分とから構成される目的プログラムを生成
するベクトル化処理方式において、 目的プログラム中に、コンパイラが設定した所定の長さ
の作業ベクトル領域を確保するプログラム部分と、実際
の長さが前記所定の長さを越える場合に新たに作業ベク
トル領域を動的に確保して割り当てるプログラム部分
と、新たに割り当てた作業ベクトル領域が不要になった
場合に当該作業ベクトル領域を解放するプログラム部分
とを挿入するようにしている。
本発明のベクトル化処理方式にあっては、コンパイル方
式の高級言語で記述されたソースプログラム中のループ
を検出・解析してベクトル化可能部分とベクトル化不可
能部分とに対応した別々のループに分割し、分割点にま
たがって定義・参照されている変数に作業ベクトルを割
り当て、ベクトル実行するプログラム部分とスカラ実行
するプログラム部分とから構成される目的プログラムを
生成すると共に、目的プログラム中に、コンパイラが設
定した所定の長さの作業ベクトル領域を確保するプログ
ラム部分と、実際の長さが前記所定の長さを越える場合
に新たに作業ベクトル領域を動的に確保して割り当てる
プログラム部分と、新たに割り当てた作業ベクトル領域
が不要になった場合に当該作業ベクトル領域を解放する
プログラム部分とを挿入する。
式の高級言語で記述されたソースプログラム中のループ
を検出・解析してベクトル化可能部分とベクトル化不可
能部分とに対応した別々のループに分割し、分割点にま
たがって定義・参照されている変数に作業ベクトルを割
り当て、ベクトル実行するプログラム部分とスカラ実行
するプログラム部分とから構成される目的プログラムを
生成すると共に、目的プログラム中に、コンパイラが設
定した所定の長さの作業ベクトル領域を確保するプログ
ラム部分と、実際の長さが前記所定の長さを越える場合
に新たに作業ベクトル領域を動的に確保して割り当てる
プログラム部分と、新たに割り当てた作業ベクトル領域
が不要になった場合に当該作業ベクトル領域を解放する
プログラム部分とを挿入する。
以下、本発明の実施例につき図面を参照して説明する。
第1図は本発明のベクトル化処理方式を適用したコンパ
イラの一実施例の構成図である。
イラの一実施例の構成図である。
第1図において、コンパイラ2は、ソース解析部21と、
ベクトル化解析部22と、ループ分割処理部23と、中間テ
キスト生成部24と、中間テキスト最適化部25と、目的プ
ログラム生成部26とから構成され、ソースプログラム1
を入力し、いったん中間テキスト3に変換し、最適化処
理を施した後に目的プログラム4を生成する機能を有し
ている。なお、ループ分割処理部23は、ループ分割部23
1と、ループ長決定部232と、作業ベクトル割当部233
と、動的作業ベクトル割当制御挿入部234とから構成さ
れ、中間テキスト生成部24は、ベクトル中間テキスト生
成部241と、スカラ中間テキスト生成部242とから構成さ
れている。
ベクトル化解析部22と、ループ分割処理部23と、中間テ
キスト生成部24と、中間テキスト最適化部25と、目的プ
ログラム生成部26とから構成され、ソースプログラム1
を入力し、いったん中間テキスト3に変換し、最適化処
理を施した後に目的プログラム4を生成する機能を有し
ている。なお、ループ分割処理部23は、ループ分割部23
1と、ループ長決定部232と、作業ベクトル割当部233
と、動的作業ベクトル割当制御挿入部234とから構成さ
れ、中間テキスト生成部24は、ベクトル中間テキスト生
成部241と、スカラ中間テキスト生成部242とから構成さ
れている。
以下、上記の実施例の各部の機能および動作を説明す
る。
る。
先ず、コンパイラ2内のソース解析部21は、供給された
ソースプログラム1を解析し、プログラム中に含まれる
ループを検出し、それにマークを付け、ベクトル化解析
部22に渡す。
ソースプログラム1を解析し、プログラム中に含まれる
ループを検出し、それにマークを付け、ベクトル化解析
部22に渡す。
ベクトル化解析部22は、マークが付けられたループを解
析し、ループ中にベクトル化可能部分とベクトル化不可
能部分とが含まれる場合には、ベクトル化可能部分に別
のマークを付け、ループ分割処理部23に渡す。また、ル
ープ中にベクトル化可能部分だけが含まれる場合あるい
はベクトル化不可能部分だけが含まれる場合には、ルー
プを形成しない部分とともに中間テキスト生成部24に渡
す。
析し、ループ中にベクトル化可能部分とベクトル化不可
能部分とが含まれる場合には、ベクトル化可能部分に別
のマークを付け、ループ分割処理部23に渡す。また、ル
ープ中にベクトル化可能部分だけが含まれる場合あるい
はベクトル化不可能部分だけが含まれる場合には、ルー
プを形成しない部分とともに中間テキスト生成部24に渡
す。
ループ分割処理部23内のループ分割部231は、ベクトル
化可能部分とベクトル化不可能部分とをそれぞれ別々の
ループを形成するように分割し、中間テキスト生成部24
内のベクトル中間テキスト生成部241またはスカラ中間
テキスト生成部242を呼び出すことによって、ベクトル
化可能部分のループおよびベクトル化不可能部分のルー
プに対する中間テキスト3を生成する。
化可能部分とベクトル化不可能部分とをそれぞれ別々の
ループを形成するように分割し、中間テキスト生成部24
内のベクトル中間テキスト生成部241またはスカラ中間
テキスト生成部242を呼び出すことによって、ベクトル
化可能部分のループおよびベクトル化不可能部分のルー
プに対する中間テキスト3を生成する。
次に、ループ長決定部232は、ループ長がコンパイラ2
に既知の場合には、ある定められた長さ(コンパイラに
対するオプションや指示によって決まる値)を越えてい
るか否かを調べ、越えている場合にはその定められた長
さを分割されたループのループ長とし、越えていない場
合には元のループ長そのものを分割されたループのルー
プ長とする。また、ループ長が不明の場合には前述の定
められた長さを分割されたループのループ長とする。
に既知の場合には、ある定められた長さ(コンパイラに
対するオプションや指示によって決まる値)を越えてい
るか否かを調べ、越えている場合にはその定められた長
さを分割されたループのループ長とし、越えていない場
合には元のループ長そのものを分割されたループのルー
プ長とする。また、ループ長が不明の場合には前述の定
められた長さを分割されたループのループ長とする。
作業ベクトル割当部233は、ループ長決定部232で決めら
れた長さで作業ベクトルを固定領域に割り当てる。
れた長さで作業ベクトルを固定領域に割り当てる。
動的作業ベクトル割当制御挿入部234は、コンパイルし
ているプログラムが実際に実行された段階で必要とされ
る実際のループ長が、ループ長決定部232で決められた
長さと等しいかあるいはそれより短い場合には、作業ベ
クトル割当部233で割り当てられた作業ベクトル領域を
そのまま使用し、実際のループ長の方が長い場合には、
動的に実際のループ長で作業ベクトル領域を確保してそ
れを使用し、当該ループの実行を終了した時点で当該作
業ベクトル領域が不要となった場合に解放を行う動作を
行うプログラム部分(制御テキスト)をソースプログラ
ム1に対応する本体のプログラムに挿入する。
ているプログラムが実際に実行された段階で必要とされ
る実際のループ長が、ループ長決定部232で決められた
長さと等しいかあるいはそれより短い場合には、作業ベ
クトル割当部233で割り当てられた作業ベクトル領域を
そのまま使用し、実際のループ長の方が長い場合には、
動的に実際のループ長で作業ベクトル領域を確保してそ
れを使用し、当該ループの実行を終了した時点で当該作
業ベクトル領域が不要となった場合に解放を行う動作を
行うプログラム部分(制御テキスト)をソースプログラ
ム1に対応する本体のプログラムに挿入する。
次いで、中間テキスト生成部24およびループ分割処理部
23によって生成された中間テキスト3は、中間テキスト
最適化部25において周知の最適化処理が施された後、目
的プログラム生成部26に渡され、目的プログラム生成部
26では渡された中間テキスト3から目的プログラム4が
生成される。
23によって生成された中間テキスト3は、中間テキスト
最適化部25において周知の最適化処理が施された後、目
的プログラム生成部26に渡され、目的プログラム生成部
26では渡された中間テキスト3から目的プログラム4が
生成される。
第2図は従来例の説明で使用した第3図のソースプログ
ラムに対し、上記の本発明を適用したコンパイラ2によ
って生成された目的プログラムの構造の概念図である。
従来例による目的プログラムを示す第5図と比較してわ
かるように、作業ベクトルWX,WYのベースアドレスをコ
ンパイル時に割当てた領域を指すように設定するプログ
ラム部分と、実際のループ長Nがコンパイル時に設定
した長さmより長いか否かをチェックし、長ければ長さ
Nで動的に作業ベクトルWX,WY用の領域を確保し、作業
ベクトルWX,WYに対するベースアドレスを再設定するプ
ログラム部分と、確保した領域を解放するプログラム
部分とが、ループ分割処理部23の動的作業ベクトル割
当制御挿入部234により目的プログラム中に挿入されて
いる。よって、この目的プログラムを実行する場合、必
要に応じて動的に作業ベクトル領域の割り当て・解放が
行われ、システム中の利用可能メモリを有効に利用しな
がら、部分ベクトル化による性能向上を図ることができ
る。
ラムに対し、上記の本発明を適用したコンパイラ2によ
って生成された目的プログラムの構造の概念図である。
従来例による目的プログラムを示す第5図と比較してわ
かるように、作業ベクトルWX,WYのベースアドレスをコ
ンパイル時に割当てた領域を指すように設定するプログ
ラム部分と、実際のループ長Nがコンパイル時に設定
した長さmより長いか否かをチェックし、長ければ長さ
Nで動的に作業ベクトルWX,WY用の領域を確保し、作業
ベクトルWX,WYに対するベースアドレスを再設定するプ
ログラム部分と、確保した領域を解放するプログラム
部分とが、ループ分割処理部23の動的作業ベクトル割
当制御挿入部234により目的プログラム中に挿入されて
いる。よって、この目的プログラムを実行する場合、必
要に応じて動的に作業ベクトル領域の割り当て・解放が
行われ、システム中の利用可能メモリを有効に利用しな
がら、部分ベクトル化による性能向上を図ることができ
る。
以上説明したように、本発明のベクトル化処理方式にあ
っては、作業ベクトルを用いてループを分割するとき
に、分割された各ループのループ長を適度に定め、実際
のループ長が定めたループ長より長い場合には、実際の
長さ分だけ動的に作業ベクトル領域を割り当て、不要と
なった時点で解放する機能を備えた目的プログラムを生
成するようにしているので、ループ長が長く作業ベクト
ル領域のサイズが大きい場合あるいはループ長が変動す
るような場合であっても、システム全体としてのメモリ
の使用が圧迫されたり使用効率が低下するということが
なくなる効果がある。
っては、作業ベクトルを用いてループを分割するとき
に、分割された各ループのループ長を適度に定め、実際
のループ長が定めたループ長より長い場合には、実際の
長さ分だけ動的に作業ベクトル領域を割り当て、不要と
なった時点で解放する機能を備えた目的プログラムを生
成するようにしているので、ループ長が長く作業ベクト
ル領域のサイズが大きい場合あるいはループ長が変動す
るような場合であっても、システム全体としてのメモリ
の使用が圧迫されたり使用効率が低下するということが
なくなる効果がある。
また、実際のループ長がコンパイラが定めたループ長よ
り長い場合であっても、実際の長さ分だけの作業ベクト
ル領域がシステムの空きメモリから確保され、正常な動
作が保証されるという効果もある。
り長い場合であっても、実際の長さ分だけの作業ベクト
ル領域がシステムの空きメモリから確保され、正常な動
作が保証されるという効果もある。
第1図は本発明のベクトル化処理方式を適用したコンパ
イラの一実施例の構成図、 第2図は本発明によって生成された目的プログラムの構
造の概念図、 第3図はソースプログラム中のDOループの例を示す図、 第4図はDOループを分割した状態を示す図および、 第5図は従来のコンパイラで生成された目的プログラム
の構造の概念図である。 図において、 1……ソースプログラム 2……コンパイラ 21……ソース解析部 22……ベクトル化解析部 23……ループ分割処理部 231……ループ分割部 232……ループ長決定部 233……作業ベクトル割当部 234……動的作業ベクトル割当制御挿入部 24……中間テキスト生成部 241……ベクトル中間テキスト生成部 242……スカラ中間テキスト生成部 25……中間テキスト最適化部 26……目的プログラム生成部 3……中間テキスト 4……目的プログラム
イラの一実施例の構成図、 第2図は本発明によって生成された目的プログラムの構
造の概念図、 第3図はソースプログラム中のDOループの例を示す図、 第4図はDOループを分割した状態を示す図および、 第5図は従来のコンパイラで生成された目的プログラム
の構造の概念図である。 図において、 1……ソースプログラム 2……コンパイラ 21……ソース解析部 22……ベクトル化解析部 23……ループ分割処理部 231……ループ分割部 232……ループ長決定部 233……作業ベクトル割当部 234……動的作業ベクトル割当制御挿入部 24……中間テキスト生成部 241……ベクトル中間テキスト生成部 242……スカラ中間テキスト生成部 25……中間テキスト最適化部 26……目的プログラム生成部 3……中間テキスト 4……目的プログラム
Claims (1)
- 【請求項1】コンパイル方式の高級言語で記述されたソ
ースプログラム中のループを検出・解析してベクトル化
可能部分とベクトル化不可能部分とに対応した別々のル
ープに分割し、分割点にまたがって定義・参照されてい
る変数に作業ベクトルを割り当て、ベクトル実行するプ
ログラム部分とスカラ実行するプログラム部分とから構
成される目的プログラムを生成するベクトル化処理方式
において、 目的プログラム中に、コンパイラが設定した所定の長さ
の作業ベクトル領域を確保するプログラム部分と、実際
の長さが前記所定の長さを越える場合に新たに作業ベク
トル領域を動的に確保して割り当てるプログラム部分
と、新たに割り当てた作業ベクトル領域が不要になった
場合に当該作業ベクトル領域を解放するプログラム部分
とを挿入することを特徴としたベクトル化処理方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21606888A JPH0754511B2 (ja) | 1988-08-30 | 1988-08-30 | ベクトル化処理方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21606888A JPH0754511B2 (ja) | 1988-08-30 | 1988-08-30 | ベクトル化処理方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0264766A JPH0264766A (ja) | 1990-03-05 |
JPH0754511B2 true JPH0754511B2 (ja) | 1995-06-07 |
Family
ID=16682766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21606888A Expired - Lifetime JPH0754511B2 (ja) | 1988-08-30 | 1988-08-30 | ベクトル化処理方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0754511B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009024683A (ja) | 2007-07-24 | 2009-02-05 | Hitachi Ltd | 複数の噴孔を有するインジェクタ、当該インジェクタを備えた筒内ガソリン噴射型内燃機関とその制御方法 |
CN114579083B (zh) * | 2022-05-09 | 2022-08-05 | 上海擎昆信息科技有限公司 | 一种基于矢量处理器的数据处理装置和方法 |
-
1988
- 1988-08-30 JP JP21606888A patent/JPH0754511B2/ja not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
FUJITSU,Vol.29,No.1,1978,P.116〜118 |
Also Published As
Publication number | Publication date |
---|---|
JPH0264766A (ja) | 1990-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6023583A (en) | Optimized variable allocation method, optimized variable allocation system and computer-readable memory containing an optimized variable allocation program | |
US5303357A (en) | Loop optimization system | |
JPH0814817B2 (ja) | 自動ベクトル化方法 | |
US5946491A (en) | Register allocation method and apparatus for gernerating spill code as a function of register pressure compared to dual thresholds | |
US20100229161A1 (en) | Compile method and compiler | |
JPH04330527A (ja) | プログラムの最適化方法及びコンパイラ・システム | |
KR20100094211A (ko) | 이종 프로세서에 대한 명령어 컴파일링 장치 및 방법 | |
EP0947922B1 (en) | Compiler | |
US6014519A (en) | Language processing unit and a language processing method to translate a source program and generate an object module file | |
KR100597414B1 (ko) | 데이터 처리 장치 및 이를 이용한 레지스터 할당 방법 | |
JP2005129001A (ja) | プログラム実行装置、マイクロプロセッサ及びプログラム実行方法 | |
JPH0754511B2 (ja) | ベクトル化処理方式 | |
JP3871312B2 (ja) | プログラム変換方法、これを用いたデータ処理装置及びプログラム | |
JPH11282814A (ja) | プログラム並列化方法及びその装置並びに並列化用プログラムを記録した記録媒体 | |
JP2576659B2 (ja) | タスク内共通領域の割当て方式 | |
Liou et al. | CASS: an efficient task management system for distributed memory architectures | |
JPH04307624A (ja) | ループ最適化方法及び装置 | |
Smith | Parallel Computing in C/C++ | |
Leu et al. | Modeling of parallel software for efficient computation communication overlap | |
Otto et al. | A language-based tuning mechanism for task and pipeline parallelism | |
JP2870218B2 (ja) | 並列実行命令列生成方式 | |
JPH1091456A (ja) | プログラムの入出力反復処理方法及びシステム及びプログラムの入出力反復処理プログラムを格納した記憶媒体 | |
JPS63120369A (ja) | プログラム変換装置 | |
JPH0512033A (ja) | 並列化コンパイル方式 | |
JPH07210544A (ja) | ベクトル命令を含む目的プログラムの生成方法 |