1985 Fiscal Year Annual Research Report
ベクトル計算機用PASCALの自動ベクトルコンパイラの開発
Project/Area Number |
60880007
|
Research Institution | Kyoto University |
Principal Investigator |
津田 孝夫 京都大学, 工, 教授 (60025905)
|
Keywords | 自動ベクトル化コンパイラ / ベクトル化 / 並列化 / データ参照関係解析 / PASCAL / 多重ループ / ループ選択 / ループ分割 |
Research Abstract |
PASCALの自動ベクトル化コンパイラの開発について、昭和60年度の実績は次の通りである。すなわち、1.コンパイラの外部仕様の決定、2.処理パスの選定、3.各パス毎のモジュール構成の決定、4.各パス間のインタフェースの仕様決定、5.中間コードの設計、6.データ参照関係解析パスの詳細化、7.同パスのコーディング及び単体テスト、8.演算順序変更による部分ベクトル化判定パスの詳細化、9.スカラ処理部分とベクトル処理部分の並列性検出パスの詳細化、10.同パスのコーディング及び単体テスト、11.制御関係解析パスの詳細化、12.構文、意味解析パスの詳細化、13.コンパイラに組み込むべき最適化手法の検討、以上の項目を完了した。また、実行時支援ルーチンの詳細化及び目的コードの設計、特にレジスタ割り付けの最適パターンの調査に着手している。上記項目6と7では、特に多重ループ全体にわたるデータ参照関係解析を効率良く、かつ、一般的な制御変数と配列添字に関しておこなうことの可能なアルゴリズムを新しく開発した。更に、(イ)既存の自動ベクトル化コンパイラには全く欠落しているベクトル処理部分とスカラ処理部分の並列化のアルゴリズム、(ロ)多重ループの意味を変えないで複数のより単純な構造のループ群に分割する強力な部分ベクトル化アルゴリズム、(ハ)埋没が生ずるため1重化することによりベクトル化できない多重ループで、ループを入れ替え、一部のループをスカラ処理することにより、他のループをベクトル化するループ選択の統一的アルゴリズム、(ニ)制御関係解析の一般化アルゴリズム、(ホ)飛び出しを含む複雑な制御の流れの多重ループの部分ベクトル化アルゴリズム、など新しいアルゴリズムを開発した。このように本研究で開発されるコンパイラは、従来のものにない重要な特色を備えている。
|