研究課題/領域番号 |
18K11233
|
研究機関 | 東北大学 |
研究代表者 |
大堀 淳 東北大学, 電気通信研究所, 教授 (60252532)
|
研究分担者 |
上野 雄大 東北大学, 電気通信研究所, 准教授 (60551554)
|
研究期間 (年度) |
2018-04-01 – 2022-03-31
|
キーワード | コンパイラ / 関数型言語 / 超並列処理 / SML# |
研究実績の概要 |
本研究の目的は、マルチコアプロセッサにスケールする超並列技術を、研究代表者等によって開発された高信頼関数型言語SML#に統合し、大規模分散計算や超並列計算をサポートする関数型言語を実現することである。この実現のため、(1)高水準言語処理系とOSライブラリとの直接連携による高水準超並列言語の実現と最適化、(2)方程式集合の並列変換を基礎とする大規模分散データ並列言語機能の設計と実現、(3)データベース問い合わせ言語との統合を基礎とする超並列入出力処理方式の研究、さらに、(4)以上の成果を統合した超並列SML#言語の実現を目指した研究を実施する計画である。本年度は、主に(1)と(2)の項目の基盤となる研究を行い以下の成果を上げた。(i) 軽量超並列スレッドライブラリMassiveThreadsをSML#実行時処理系に結合し、関数型言語からシステムの軽量スレッドを直接使用可能なプロトタイプ言語の実現、(ii)並行ゴミ集め方式に新たに「allocator」の概念を導入し、軽量超並列スレッドをサポートする並行ゴミ集め方式を開発しそのプロトタイプを実装、(iii)等式集合の並行変換による並列処理を行うforeach構文の型理論を構築し軽量超並列スレッドを用いた実装方式を開発、(iv)以上の複雑な並列処理機能を含む関数型言語を効率よいコードにコンパイルするために、不要な型抽象を出来る限り抑止する型主導最適化コンパイル方式の理論と実装方式を構築し、SML#コンパイラへ統合、(v)さらに、超並列機能を統合したSML#言語の完成度を高めるための研究開発を継続し、デバッグ、テンプレート処理、ストリーミングデータベース機能統合等の研究開発を行った。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
当初の目標であった軽量スレッドライブラリとSML#の実行時処理系の統合、それらを関数型言語からシームレスに利用するための軽量超並列スレッドのための並列ゴミ集め(GC)方式を実現でき、さらに、当初の計画を超えて最適化コンパイル方式の理論と実装技術を開発できた。軽量スレッドライブラリの統合および軽量超並列スレッドのための並列ゴミ集め方式は、いまだ出版論文としての成果はないが、ソフトウェアとして実現されており、今後近いうちに論文が出版されると期待される。最適化コンパイル方式の理論と実装技術は、関数型言語のトップコンファレンスであるACM ICFP 2018にて発表された。以上から、概ね順調に推移していると判断できる。
|
今後の研究の推進方策 |
軽量スレッドライブラリの統合および軽量超並列スレッドのための並列ゴミ集め方式のさらなる改良や性能評価を行い、トップコンファレンス等での発表を目指すとともに、それら成果を実装したSML#言語のリリースを目指す。それらと並行して、宣言的な並列処理の方式や言語設計の研究を継続し、超並列処理をサポートする関数型言語、超並列SML#の実現を目指す。
|
次年度使用額が生じた理由 |
執行額は、予算額700,000円に対して、611,851円と87%に達し、概ね予定通り執行できたと言える。繰越分の88,149円は、翌年の成果発表等に有効に活用する予定である。
|