研究概要 |
スケルトン並列プログラミングでは,典型的な並列処理パターンをカプセル化した「並列スケルトン」と呼ばれる基本関数を組み合わせてプログラムを作成する.各並列スケルトンは,目的とする並列構造を抽象化しているので,利用者はその内部の詳細を知る必要はない.その結果,並列スケルトンを用いれば,逐次プログラムを書く感覚で並列プログラムを開発できる.今までいくつかのスケルトン並列プログラミングシステムが開発されてきたが,言語拡張を行っていたり,データ配置に制限がある,サポートされるデータ型が限定されている,最適化機構を備えていないなどの問題点があった. 本研究は,上のような問題点を克服し,多様なデータ型を提供し,最適化機構も備えているような,実用に耐えうる並列スケルトンライブラリを構築し公開することを目的としている.本研究で構築するライブラリSkeToはC++を用いて開発し,今年度は以下のような成果を得ることができた. 1.SkeToがサポートする基本的なデータ構造として,リスト,木,二次元配列の3種類を実現した.特に,木をサポートするようなライブラリは,従来はほとんど存在していなかった. 2.リスト上の並列スケルトンを利用するプログラムに関して,並列データ構造上の融合変換の理論を構築し,それに基づく自動最適化機構を実現した. 3.SkeToライブラリの第1版を,ホームページhttp//www.ipl.t.u-tokyo.ac.jp/sketoを通して,一般に公開した. 4.海外のスケルトン並列プログラミングの研究者2名をまじえた非公式なワークショップを,研究分担者の所属する東京大学で3月に開催した.
|