2001 Fiscal Year Annual Research Report
Project/Area Number |
12780188
|
Research Institution | The University of Tokyo |
Principal Investigator |
尾上 能之 東京大学, 大学院・情報理工学系研究科, 助手 (80292770)
|
Keywords | プログラム変換 / 逆融合変換 / diffusion / 構成的アルコリズム論 |
Research Abstract |
本年度は前年度までの成果をもとに,実用的に用いられている言語処理系に対して逆融合変換を実現し,その性能評価を試みた.我々はこれまでに融合変換(program fusion)の処理を関数型言語HaskellのコンパイラであるGHCに組み込み,その効果を主張してきた.今回もその研究で得られた知見を活用し,まずコンパイラ内部で用いられるCore言語上で自動的に逆融合変換(program diffusion)を行なうためのアルゴリズムの開発を目指した. ハードウェアの環境としてはPCクラスタを想定し,その上で利用可能なPVM(Parallel Virtual Machine)に基づいた処理系であるGPH(Glasgow Parallel Haskell)を利用することにした.GPHで並列プログラムを記述するには,parとseqという二つの関数を用いて並列部分を指定する.そこで逆融合変換後のプログラムを並列プログラムにするためには,mapやfoldなどの基本関数を予めpar, seqを利用した並列処理に対応させた定義として用意しておき,変換後のプログラムからはそれらの並列対応させた基本関数を呼び出すことにした. 逆融合変換を自動的に行なうシステムを作成するためには,逆融合定理を適用するために必要な,結合性をみたす演算子を見つけだす処理を自動化する必要がある.そのためのアプローチとして,プログラマが注釈(annotation)としてプログラム中に演算子を明示的に指定する手法と,プログラムの文脈から自動的に推測する手法が考えられる.今回は注釈を埋め込む手法を中心に実装を手がけたが,最終的には完成までには至らなかった.今後は変換処理の実装を進めるとともに,プログラムの文脈から結合演算子を自動的に推測するアルゴリズムについても考慮していく予定である.
|
-
[Publications] 尾上能之, 胡振江, 岩崎英哉, 武市正人: "プログラム融合変換の実用的有効性の検証"コンピュータソフトウェア. 17・3. 81-85 (2000)
-
[Publications] 尾上能之: "プログラミング言語Haskellとその処理系"コンピュータソフトウェア. 18・6. 59-66 (2001)