平成7年度 委託研究ソフトウェアの 成果ソフトウェア

(5) KL1 のゴール・スケジューリング最適化

研究代表者:中島 浩 助教授
      京都大学 工学部 情報工学教室


ゴール・スケジューリング最適化 KLIC 試作版


		マシン:UNIXマシン
		環境:UNIX
		言語:C, KL1
		ソース量:8MB
		文書:ユーザーズマニュアル(日本語)


[概要]

解析情報を利用したスケジューリング最適化による、 並列論理型言語KL1処理系KLICの改良版

[特徴]

現在公開されているKLICは、細粒度のゴール・スケジューリングを行うため、 プログラムによってはそのオーバヘッドにより速度が大幅に低下する。

本処理系では、KL1プログラムの依存解析を行い、 実行順序を静的に決定可能なゴール群をスレッドとした コードを生成することによって、プログラムのスケジューリング最適化を行う。

[機能]

・対象プログラムの依存解析による、
  ゴールの静的スケジューリング(スレッド化)
・スレッド化されたコードの生成による、
  スレッド内ゴールの実行オーバヘッド削減
・スレッド単位の動的スケジューリングによる
  スケジューリングのオーバヘッド削減
・各スレッドの環境をスタックで保持することによる、
  ヒープに対するGC回数削減

ただし、現在のバージョンは評価用の試作版のため、 並列実行や分割コンパイルに対応していない、 使用できる組込述語が限られる、といった制限事項がある。

[ディレクトリ構成]

オリジナルに対し、以下のディレクトリ内のファイルに変更を加えた。
compiler 最適化版コンパイラ
・ runtime  最適化版ランタイムシステム
・ include/klic 最適化版インクルードファイル
また、以下のディレクトリを追加した。
org-comp 従来版の compiler と同じ内容
・ sched-test テストプログラム

[FTP]



www-admin@icot.or.jp