Realizing massively parallel functional programming language by integrating parallel technologies into SML#, an ML-style functional language
Project/Area Number |
18K11233
|
Research Category |
Grant-in-Aid for Scientific Research (C)
|
Allocation Type | Multi-year Fund |
Section | 一般 |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Tohoku University |
Principal Investigator |
Ohori Atsushi 東北大学, 電気通信研究所, 名誉教授 (60252532)
|
Co-Investigator(Kenkyū-buntansha) |
上野 雄大 新潟大学, 自然科学系, 准教授 (60551554)
|
Project Period (FY) |
2018-04-01 – 2023-03-31
|
Project Status |
Completed (Fiscal Year 2022)
|
Budget Amount *help |
¥4,290,000 (Direct Cost: ¥3,300,000、Indirect Cost: ¥990,000)
Fiscal Year 2021: ¥1,300,000 (Direct Cost: ¥1,000,000、Indirect Cost: ¥300,000)
Fiscal Year 2020: ¥910,000 (Direct Cost: ¥700,000、Indirect Cost: ¥210,000)
Fiscal Year 2019: ¥1,170,000 (Direct Cost: ¥900,000、Indirect Cost: ¥270,000)
Fiscal Year 2018: ¥910,000 (Direct Cost: ¥700,000、Indirect Cost: ¥210,000)
|
Keywords | 関数型プログラミング言語 / コンパイラ / SML# / 並行並列GC / マルチコアCPU / 軽量スレッド / 超並列技術 / 関数型言語 / 並列並行ゴミ集め(GC) / 超並列処理 / 型主導コンパイル / 動的型付け機構 / SML#言語 / 高信頼言語 / プログラミング言語 |
Outline of Final Research Achievements |
The major technical challenge in realizing a massively parallel functional language is to establish a parallel and concurrent garbage collection (GC) that supports a large number of light-weight system threads running on a multi-core CPU. Through this research, we have established novel parallel and concurrent garbage collection method and its implementation techniques, and have implemented the GC method in a full-scale ML-style functional language, SML#. The resulting SML# supports more than one million lightweight user threads running on multi-core CPU. The benchmark evaluation shows good scalability on a multi-core processor comparable to C, and it outperforms other GC-based compilers in most cases. In addition to this new GC method, we have extended SML# with various advanced features and have released the SML# compiler as open-source software through the GitHub repository.
|
Academic Significance and Societal Importance of the Research Achievements |
本研究が実現した並列・並行ゴミ集め方式は、従来ML系関数型言語においては困難であった細粒度スレッドのマルチコア上での並行並列実行を可能にした。これら研究成果を取り入れて拡張されたSML#言語は、マルチコア上の100万を超える軽量スレッドをサポートする世界的にも類を見ない関数型言語である。これら成果を実現したSML#言語コンパイラ4.00版はGitHubを通じてオープンソースソフトウェアとして提供され、世界の関数型言語コミュニティに貢献している。さらに我々は、本研究成果の社会への幅広い普及を目指しSML#に関するWEBページや教科書の出版等を行い、ML系言語の幅広い普及に貢献している。
|
Report
(6 results)
Research Products
(20 results)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
[Presentation] 高水準IoTプログラミング環境の実現に向けて2018
Author(s)
大塚祐貴, Karim HAMDI, 上野雄大, 大堀淳
Organizer
The 2nd. cross-disciplinary Workshop on Computing Systems, Infrastructures, and Programming (xSIG 2018) (ポスター発表)
Related Report
-
-
-
-