2023 Fiscal Year Final Research Report
Development of Functional Language Capable of Parallel Computation on Multicore Processors
Project/Area Number |
19K11893
|
Research Category |
Grant-in-Aid for Scientific Research (C)
|
Allocation Type | Multi-year Fund |
Section | 一般 |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Niigata University (2021-2023) Tohoku University (2019-2020) |
Principal Investigator |
|
Project Period (FY) |
2019-04-01 – 2024-03-31
|
Keywords | 関数型言語 / コンパイラ / ガベージコレクション / 動的型付け / SML# |
Outline of Final Research Achievements |
We conducted research on theory and implementation of a functional programming language that is capable to parallel computation on multicore processors similarly to C and FORTRAN. Major achievements includes the following: (1) We have developed a fully concurrent and parallel garbage collection (GC) algorithm that does not stop any thread. Its amount of parallelism is automatically increases when the number of threads increases. We proved the correctness of the algorithm through a formal model. (2) We have optimized and implemented the GC algorithm and equip the SML# compiler with it. The implementation is widely available on Internet as an open-source software. To the best of our knowledge, SML# is a world first practical full-scale Standard ML compiler that achieves full-scale parallel performance of multicore processors.
|
Free Research Field |
プログラミング言語
|
Academic Significance and Societal Importance of the Research Achievements |
本研究成果の学術的な意義は, 自動的メモリ管理方式の改善により、今日広く普及しているマルチコアCPUを用いて高性能な並列計算を行うことができる、フルスケールの関数型言語コンパイラを実現できたことにある。関数型言語は並行・並列処理の記述に向いていると言われており、並行・並列計算モデルや自動並列化に関する研究が古くから行われている一方で、理論上の並列計算性能を実現することができる関数型言語処理系は、いくつかの実証実験的な処理系を除いて、これまで存在しなかった。本研究成果により、高性能な並列計算が可能な関数型言語処理系が日本発で全世界に無償で提供されたことの社会的意義は大きい。
|