• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2020 Fiscal Year Research-status Report

マルチコア並列計算に対応した関数型言語処理系の実現

Research Project

Project/Area Number 19K11893
Research InstitutionTohoku University

Principal Investigator

上野 雄大  東北大学, 電気通信研究所, 准教授 (60551554)

Project Period (FY) 2019-04-01 – 2023-03-31
KeywordsSML# / 並列計算 / コンパイラ / 関数型言語 / ガベージコレクション
Outline of Annual Research Achievements

本研究の一般的な目的は,C言語やFORTRANに匹敵する並列計算性能を安定して発揮できる関数型言語処理系を実現することである.この実現に向けて,本研究では,主に関数型言語のコードが行うメモリの使い方に着目し,暗黙的なメモリ操作や大域的同期を含まないコードを生成するコンパイル方式の開発,および関数型言語の高いメモリ要求に耐える性能を発揮する並行・並列メモリ管理方式の構築を目指した研究を実施する計画である.本年度は主にソフトウェアの開発を行い,以下の成果を得た.
(1) 昨年度に開発した並行並列ガベージコレクション(GC)アルゴリズムの実装に含まれていたバグを修正し,また更なるチューニングを施し,実装の完成度を高めた.さらに,本実装をSML#コンパイラ本体にマージし,SML# 3.6.0版としてリリースを行った.
(2) 自然なデータ表現と分割コンパイルを持つ関数型言語において,関数呼び出し時に発生する暗黙のメモリ確保を除去する方式を実現するためには,型主導コンパイルによって生成された各変数のタグ情報をコード生成フェーズ群まで正確に保存しなければならないことが明らかになった.そのため,本方式の実現には,現在のSML#コンパイラの構造を大きく変更しなければならない.本年はこの構造変更のためのリファクタリング作業を行った.
(3) SML#コンパイラの開発を推進し,データベースとのよりシームレスな統合や,動的型付けへの存在型の導入などの新たな機能を実現した.

Current Status of Research Progress
Current Status of Research Progress

3: Progress in research has been slightly delayed.

Reason

昨年達成したガベージコレクション(GC)アルゴリズムの実現はいまだ論文として出版されておらず,近いうちに論文として出版されると期待はされるものの,本年中に達成できなかったのは残念である.また,もう一つの研究項目である,暗黙的なメモリ操作を含まないコード生成の実現にはまだ道半ばであり,論文としてまとめられる成果には至っていない.以上から,やや遅れていると判断する.

Strategy for Future Research Activity

引き続き以下の点に重点を置き研究を進める.
(1) 並行・並列メモリ管理方式のさらなる改良や性能評価を行い,トップカンファレンス等での発表を目指す.(2) 暗黙的なメモリ操作や大域的同期を含まないコードを生成するコンパイル方式を開発する.至近の目標は,自然なデータ表現を使用する関数型言語における多相関数のレジスタマシンでの実現方式を確立し,関数呼び出し時に発生する暗黙のメモリ確保を除去することである.その他,暗黙のメモリ操作をSML#コンパイラ全体から洗い出し,それらを除去するための方法を検討する.
(3) 以上と並行して,プログラム最適化技術や言語設計の研究を継続し,マルチコアCPUの性能を引き出すチューニングが可能なSML#コンパイラの実現を目指す.

Causes of Carryover

投稿論文が採択されず,また新型コロナウイルス感染症対策で学会の多くがオンライン開催となり,旅費がかからなかったため,次年度使用額が生じた.次年度使用額は,コロナ禍が終息した場合に旅費として使用する予定である.

  • Research Products

    (5 results)

All 2020 Other

All Presentation (4 results) Remarks (1 results)

  • [Presentation] 自然なデータ表現を持つ多相型言語のLLVM IRへのコンパイル方式2020

    • Author(s)
      上野雄大
    • Organizer
      日本ソフトウェア科学会第37回大会
  • [Presentation] SML#の並列処理機能とその性能2020

    • Author(s)
      上野雄大,大堀淳
    • Organizer
      日本ソフトウェア科学会第37回大会
  • [Presentation] 関係代数を基礎とするプログラムに現れる名前解析システム2020

    • Author(s)
      大堀淳,上野雄大
    • Organizer
      日本ソフトウェア科学会第37回大会
  • [Presentation] 外部データの解釈を文脈ごとに与える動的型付け機構2020

    • Author(s)
      大堀淳,上野雄大,高城光平
    • Organizer
      日本ソフトウェア科学会第37回大会
  • [Remarks] SML# Project

    • URL

      https://www.pllab.riec.tohoku.ac.jp/smlsharp/

URL: 

Published: 2021-12-27  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi