Common Lisp 用最適化コンパイラの設計と試作
スポンサーリンク
概要
- 論文の詳細を見る
汎用大型機上で動く, Common Lisp の最適化コンパイラを設計・試作した. Common Lisp は,人工知能等の分野における実用的な応用に必要な機能を十分に備え,かつ関数性を従来 Lisp 以上に取り込むことを目的とした近代的な Lisp 言語である.一方,従来の Lisp 処理系のユーザは,実行性能の点などで必ずしも満足していなかった.このため,我々は, Common Lisp に準拠した高速の処理系 HiLISPとそのコンパイラを設計・試作した.ここでは,HiLISP コンパイラの設計と最適化の方式を中心に述べる.HiLISPコンパイラは,高速性と移植性を考慮して,仮想 Lisp マシン語である Lcode を中間語として生成する.最適化の方式として,関数呼出しの最適化,型判定の最適化,局所最適化の各々の課題に対して,それぞれ,自己再帰展開,コンパイル時の型判定・型推定,パイプラインを意識した命令列の並べ替えなどの方式を設計し,試作した.試作した HiLISP コンパイラに対して, Lisp コンテスト代表12題ベンチマークにより,各最適化項目の性能を評価した.この結果,組込み関数展開の効果が最も大きく,次いで型判定・型推定の効果が大きいことがわかった.再帰関数展開,命令列の並べ替えなどの効果も確認できた.ここで提案する最適化方式は, Lisp コンパイラ,特に, Common Lisp コンパイラに有効な方式である.
- 1987-11-15
著者
関連論文
- Common Lisp 用最適化コンパイラの設計と試作
- 高速Common Lisp-HiLISPの実現
- 特許CD-ROMライブラリ検索システム
- HiLISP統合型プログラミング環境
- Common Lispインタプリタ制御の高速化手法と実験評価
- 段階的変換によるLispプログラムのベクトル化
- 自動ベクトルコンパイラにおける部分ベクトル化の方式