JPS6336337A - スカラ/ベクトル命令の融合スケジユ−リング処理方式 - Google Patents

スカラ/ベクトル命令の融合スケジユ−リング処理方式

Info

Publication number
JPS6336337A
JPS6336337A JP17781486A JP17781486A JPS6336337A JP S6336337 A JPS6336337 A JP S6336337A JP 17781486 A JP17781486 A JP 17781486A JP 17781486 A JP17781486 A JP 17781486A JP S6336337 A JPS6336337 A JP S6336337A
Authority
JP
Japan
Prior art keywords
instruction
scalar
vector
execution
vector instruction
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
JP17781486A
Other languages
English (en)
Inventor
Akikazu Abe
安部 曉一
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 JP17781486A priority Critical patent/JPS6336337A/ja
Publication of JPS6336337A publication Critical patent/JPS6336337A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンパイラの命令スケジューリング処理方式に
関し、特に、スカラ命令とベクトル命令との間でのスケ
ジューリング処理方式に関する。
〔従来の技術〕
従来、コンパイラの命令スケジューリング処理は、スカ
ラ命令どうし、あるいは、ベクトル命令どうしでしか行
わnでおらずスカラ命令とベクトル命令との関係を考慮
した命令スケジューリング処理は行わ汎でいなかった。
以下余日 〔発明が解決しようとする問題点〕 上述した従来の命令スケジューリング処理は。
スカラ命令とスカラ命令との間あるいはベクトル命令と
ベクトル命令との間の関係は考慮するが、スカラ命令と
ベクトル命令との間の関係を考慮しておらず、システム
の特徴、すなわち実行開始待ち中のベクトル命令の後ろ
に実行開始可能なスカラ命令がある場合にはベクトル命
令の実行開始に先立ってスカラ命令を実行開始させるこ
とにより演算器の空き時間を少なくしているという特徴
や、スカラ命令はベクトル命令より実行時間がはるかに
短く、ベクトル命令とスカラ命令は並行に実行さnるの
でベクトル命令の後ろで実行されるスカラ命令はベクト
ル命令の実行にかくれて実質上実行時間が0になるとい
う特徴を十分に生かしき牡ないという欠点がある。
〔問題点を解決するための手段〕
本発明の命令スケジューリング処理方式は。
少なくとも、ベクトル演算手段、スカラ演算手段、スカ
ラ演算とベクトル演算の並行処理手段。
命令を逐次取り出し解析し、その命令を実行開始させる
ことが可能か否かを判定し、実行を開始または待たせる
手段、及び実行開始可能なスカラ命令の前にその時点で
は実行開始不可能なベクトル命令が待たされている場合
にそのベクトル命令の実行開始に先立って前記スカラ命
令の実行を開始させる手段を有するシステムに対して、
コンパイル方式の高級言語で記述さ扛たプログラムの目
的プログラム生成時における命令スケジューリング処理
に際して、1個以上のスカラ命令とその直後のベクトル
命令との依存関係を調べ、実行順序に依存関係がない場
合にはスカラ命令をベクトル命令の後ろに配置するよう
な命令のスケジューリング手段を有するコンパイラを備
えるよう構成されている。
〔実施例〕
次に9本発明の実施例について図面を参照して説明する
第1図は本発明の一実施例に使用するコンパイラの機能
ブロック図である。コンパイラ2内のソース解析部21
は供給さ汎たソースプログラム1を解析し、ベクトル化
処理部分をベクトル化処理部25に渡し、他の部分を非
ベクトル化処理部26に渡す。
筬 中間テキスト生f部22内のベクトル化処理部25は、
ソース解析部21から渡されたプログラムに対し、ベク
トル命令を用いた目的プログラムを生成するための中間
テキスト3を生成する。一方、非ベクトル化処理部26
は、ヌカラ命令を用いた目的プログラムを生成するため
の中間テキスト6を生成する。中間テキスト生成部22
によって生成さ扛た中間テキストろは中間テキスト最適
化部26において周知の最適化処理が施されたのち、目
的プログラム生成部24に渡される。
目的プログラム主成部24内の命令生成部27は、渡さ
れた中間テキスト3に対し、ベクトル命令やスカラ命令
の列、すなわち目的プログラム4を生成し、命令スケジ
ューリング処理部28に渡す。命令スケジューリング処
理部28は、目的プログラム4に含まれるスカラ命令列
及びベクトル命令列の中からスカラ命令とそnに直続す
るベクトル命令との対を選び出し。
スカシ/ベクトル命令依存関係解析部29に渡す。
スカシ/ベクトル命令依存関係解析部29は。
渡されたスカラ命令とベクトル命令の各オペランドを調
べ、当該スカラ命令とベクトル命令の実行順序を入扛換
えた場合にオペランドの定義。
参照関係が壊汎ないかどうかを判定し、命令スケジュー
リング処理部28に知らせる。
命令スケジューリング処理部28は、スカシ/ベクトル
命令依存関係解析部29によって入n換え後も定義、参
照関係が壊れないと判定された場合には、当該スカラ命
令tベクトル命令の後ろに移動させる。
命令スケジューリング処理部28は、スカラ命令とそ扛
に直続するベクトル命令とのすべての対に対して上記の
操作を操り返した後に生成された命令列(目的プログラ
ム4)に対して周知のスケジューリング処理を施し、最
終的な目的プログラム4を生成する。
第2図は本発明で使用する演算処理システム納されたプ
ログラムを実行する。入出力制御装置7は演算処理装置
6と並行して入出力装置を制御する。
ベクトルマスクレジスタ61及びマスク演算器62i、
条件付きのベクトル演算時に参照さ汎るベクトルマスク
を生成するために使用される。ベクトルレジスタ63に
はベクトルデータが保持され、ベクトル演算器64はベ
クトルレジスタ63に保持されたベクトルデータを高速
に演算処理する。スカシレジスタ65にはスカシデータ
が保持さn、スカシ演算器66により演算処理が施さn
る。スカシレジスタ65はベクトル演算器64によって
参照することも可能である。また、ベクトル演算器64
とスカシ演算器66は並行動作が可能である。
第6図は本発明で使用する演算処理システムで実行され
るスカシ及びベクトル命令列の実行態様を示す例である
。VRl、VH2,・・・、VB2ばそnぞnベクトル
レジスタを示し、SR1゜SR2,・・・、SR6はそ
nぞnスカランジスタを示す。時刻toにおいてベクト
ル加算命令VR4−VR2+VR3が取り出さn、解析
さ扛9時刻t1においてベクトル加算器が起動さn、ベ
クトル加算の実行が開始される。こnと並行して。
時刻t+ においては1次の命令、すなわちベクトル乗
算命令VR4=VR5*VR6が取り出され、解析され
9時刻t2においてベクトル乗算器が起動され、ベクト
ル乗算の実行が開始される。
さらに2時刻t2においては、スカシ加算命令SRI 
、=SR2+SR3が取り出さn、解析さn。
時刻t5において実行が開始さnる。時刻t5において
はさらに2次のスカシ加算命令5R4=SR5+SR6
が取り出さn、解析され1時刻t4において実行が開始
される。図に示すようにベクトル演算の実行時間はスカ
シ演算と比べてはるかに長いので、2個のスカシ命令(
5R1=SR2+SRろ及び5R4=SR5+SR6)
は。
先行するベクトル命令よりも早く終了する。すなわち、
この2個のスカシ命令の実質的な実行時間けOである。
第4図は本発明を実施前後の命令列の例であり、第5図
はその効果を示した図である。第4図において、スカシ
命令(1)(2)とベクトル命令(1)(2)の間に依
存関係はないので、ベクトル命令(1)(2)の後ろに
スカシ命令(1)(2)を配置するようなスケジューリ
ング処理を施すことにより、第4図の後半に示すような
命令列を得る。第5図の前半の命令列においては、スカ
シ命令5R7=SR3+SR9の取り出し及び解析時間
t1−t。
とスカシ命令5R10=SR11+5R12の取り出し
及び解析時間’t、5− t2とが命令列全体の実行時
間tz −toの中に含まれているのに対し。
第5図の後半の命令列、すなわち本発明実施後の命令列
全体の実行時間tr −toの中V′Cは含まれていな
いことが判る。すなわち、tz−jr=(t+−to)
+(ts−t2)  だけの実行時間短縮が図られたこ
とになる。
〔発明の効果〕
以上説明したように本発明は、同時に実行開始可能なベ
クトル命令とスカシ命令がある場合にスカシ命令の取り
出しに先立ってベクトル命令の取り出しが行わnるよう
に命令列をスケジューリングすることにより、プログラ
ムの実行効率が向上するという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例に使用するコンパ第4図に示
す命令列の実行態様を示す図であるっ1・・・ソースプ
ログラム、2・・コンパイラ。 6・・・中間テキスト、4・・・目的プログラム、21
・・・ソース解析部、22・・・中間テキスト生成部。 26・・・中間テキスト最適化部、2.4・・・目的プ
ログラム生成部、25・・・ベクトル化処理部、26・
・・非ベクトル化処理部、27・・・命令生成部。 28・・・命令スケジューリング処理部、29・・・ス
カラ/ベクトル命令依存関係解析部。 第1図 第2図 、5 第3図 明 t、 b t2b L4 氾4図 第5図

Claims (1)

    【特許請求の範囲】
  1. 1、すくなくとも、ベクトル演算手段、スカラ演算手段
    、スカラ演算とベクトル演算の並行処理手段、命令を逐
    次取り出し解析し、その命令を実行開始させることが可
    能か否かを判定し、実行を開始または待たせる手段、及
    び実行開始可能なスカラ命令の前にその時点では実行開
    始不可能なベクトル命令が待たされている場合に、その
    ベクトル命令の実行開始に先立って前記スカラ命令の実
    行を開始させる手段を有するシステムに対して、コンパ
    イル方式の高級言語で記述されたプログラムの目的プロ
    グラム生成時における命令スケジューリング処理に際し
    て、1個以上のスカラ命令とその直後のベクトル命令と
    の依存関係を調べ、実行順序に依存関係がない場合には
    スカラ命令をベクトル命令の後ろに配置するような命令
    のスケジューリング手段を有するコンパイラを備えたこ
    とを特徴とするスカラ/ベクトル命令の融合スケジュー
    リング処理方式。
JP17781486A 1986-07-30 1986-07-30 スカラ/ベクトル命令の融合スケジユ−リング処理方式 Pending JPS6336337A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17781486A JPS6336337A (ja) 1986-07-30 1986-07-30 スカラ/ベクトル命令の融合スケジユ−リング処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17781486A JPS6336337A (ja) 1986-07-30 1986-07-30 スカラ/ベクトル命令の融合スケジユ−リング処理方式

Publications (1)

Publication Number Publication Date
JPS6336337A true JPS6336337A (ja) 1988-02-17

Family

ID=16037556

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17781486A Pending JPS6336337A (ja) 1986-07-30 1986-07-30 スカラ/ベクトル命令の融合スケジユ−リング処理方式

Country Status (1)

Country Link
JP (1) JPS6336337A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0377141A (ja) * 1989-08-18 1991-04-02 Fujitsu Ltd コンパイル処理装置
JP2008125526A (ja) * 2006-11-16 2008-06-05 Sekisui Home Techno Kk 棚板支持具
JP2009048252A (ja) * 2007-08-14 2009-03-05 Oki Electric Ind Co Ltd プログラム変換装置及びコンパイラプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0377141A (ja) * 1989-08-18 1991-04-02 Fujitsu Ltd コンパイル処理装置
JP2008125526A (ja) * 2006-11-16 2008-06-05 Sekisui Home Techno Kk 棚板支持具
JP2009048252A (ja) * 2007-08-14 2009-03-05 Oki Electric Ind Co Ltd プログラム変換装置及びコンパイラプログラム

Similar Documents

Publication Publication Date Title
US20020169942A1 (en) VLIW processor
JP3480973B2 (ja) 並列処理システムの動作解析装置
JPH04307625A (ja) ループ最適化方法及び装置
KR20080093108A (ko) 프로그램 병렬 실행 시스템 및 방법
JPH0756892A (ja) マスク付きベクトル演算器を持つ計算機
JP2008176453A (ja) シミュレーション装置
US5850551A (en) Compiler and processor for processing loops at high speed
JPS6336337A (ja) スカラ/ベクトル命令の融合スケジユ−リング処理方式
JP2001125792A (ja) 最適化促進装置
US20080270760A1 (en) Debug support method and apparatus
JPS62217325A (ja) アセンブラコ−ド最適化方式
JPS61245239A (ja) 論理回路方式
US7644256B2 (en) Method in pipelined data processing
JP3547562B2 (ja) マイクロプロセッサ
JPH11242598A (ja) コンパイル方法およびコンパイル装置ならびにオブジェクトプログラム実行方法およびオブジェクトプログラム実行装置ならびにプログラム記憶媒体
JPH1196018A (ja) コンパイル装置及び方法並びにコンパイル実行プログラムを記録したコンピュータ読み取り可能な記録媒体
KR101118593B1 (ko) Vliw 명령어 처리 장치 및 방법
JP2924735B2 (ja) パイプライン演算装置及びデコーダ装置
JPH05289870A (ja) 並列命令実行制御方式
JP2870218B2 (ja) 並列実行命令列生成方式
JP2835179B2 (ja) 並列処理計算機
JPH11250035A (ja) 編集方式及び方法
JPH06309166A (ja) 演算処理装置及び演算処理方法
JPH06103083A (ja) 部分和計算方法
JPS59160239A (ja) 情報処理装置