2010 Fiscal Year Annual Research Report
非数値計算問題に対するスケルトン並列プログラミングの応用に関する研究
Project/Area Number |
22800007
|
Research Institution | The University of Tokyo |
Principal Investigator |
江本 健斗 東京大学, 大学院・情報理工学系研究科, 助教 (00587470)
|
Keywords | 並列プログラミング / スケルトン / プログラム導出 / 半環 / 生成検査法 / 組み合わせ問題 / 非数値計算問題 |
Research Abstract |
理論の観点では、まず、非数値計算問題をプログラミングの観点から整理し、関数型プログラミングで広く利用されてきた内包表記による生成検査(generate-and-test)の記述に縮約演算を組み合わせ、最短路問題や最滴列問合せなどの組み合わせ問題のプログラムが統一的に記述された。次に、それらの多くの問題に共通して現れる数学的な構造(半環)に着目し、既存のスケルトンの組み合わせで表現される効率的な並列プログラムを統一的な記述から導出する手法が開発された。本手法は、検査述語ないし問合せ述語の構造を用いて半環を再帰的に拡張することを特徴とし、既存の導出手法にくらべ、(1)半環の構造を用いるため効率的な並列プログラムが導出できる、(2)より広い範囲の問題に対して統一的な効率化を与えられる、(3)半環という数学的に整理されだ概念を用いるたぬ導出過程が理解しやすい、等の利点を持つ。また、本手法で用いるプログラム効率化のための変換規則は構成的に証明されており、その変換を機械的に用いることが可能である。そのため、本手法によるプログラムの効率化を自動化したプログラミング環境の構築が可能となる。実践の観点では、簡単なフロトタイプ実装により、上記手法による最適化が機械的に行ること及びその結果得られるスケルトンプログラムが正しく動作することが、具体的な例題を通して確認された。これにより、非数値計算問題のための最適化機能を備えたライブラリや領域特化言語が実現可能であることが示された。
|
Research Products
(3 results)