研究課題/領域番号 |
15K15965
|
研究機関 | 東京大学 |
研究代表者 |
森畑 明昌 東京大学, 大学院総合文化研究科, 講師 (10582257)
|
研究期間 (年度) |
2015-04-01 – 2019-03-31
|
キーワード | 並列化 / 関数型言語 / 型システム |
研究実績の概要 |
本研究の目的は、並列性を意識せず記述したプログラムを並列プログラムへ変換する「並列化」のための基盤技術を与えることである。特に、結合法則や分配法則などの代数的性質を利用し、高階の関数型言語の並列化を行う手法を、型システムをベースに構築することを目的とする。この目的に向けての第一歩として、本年度は主に以下の成果を挙げた。 ①並列化の基礎となる言語及び型システムの設計:関数型言語の基盤となるラムダ計算をベースに、その計算過程で用いられる演算子を追跡する型システムと、それを利用して並列評価を行う操作的意味の設計を行った。現時点での設計は萌芽的なものではあるが、既存の並列化手法、特に本研究の先行研究であるXuらの研究を包摂しうるものであるとの観察が得られている。この結果は,今後より本格的な型システムを設計する上での出発地点となり得る。この成果は「第18回プログラミングおよびプログラミング言語ワークショップ(PPL 2016)」で発表し、論文章を受賞した。 ②実用的な応用の調査:並列化手法としてどのような例を扱う必要があるかを知るため、最適部分列問題を並列に計算するアルゴリズムについて調査を行った。調査の副作用として、並列アルゴリズムが知られていなかった問題群も扱える新たな統一的並列アルゴリズムを発見した。このアルゴリズム中でも代数的性質が重要な役割を演じるが、本研究全体との関連は現時点では明らかではない。この成果は、「日本ソフトウェア科学会第29回大会」で発表した。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
既に並列化基盤となる高階関数型言語とその型システムの萌芽的な設計が得られている。まだまだ改善の余地はあるとはいえ、初年度の進捗としては悪くないと考えられる。
|
今後の研究の推進方策 |
本年度設計した言語・型システムが、既存の並列化手法のどの程度を捉えることができているのかについての調査を行う。また、実用的な応用に関する調査も並行して引き続き行う。
|
次年度使用額が生じた理由 |
参加を検討していた国際学会が偶然国内での開催であり、旅費が当初の想定ほど必要なかったため。
|
次年度使用額の使用計画 |
PCが破損したときのバックアップを準備するなど、より充実した研究環境のために用いる。
|