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

Research on Managed Languages and Runtime Systems to Utilize Memory with Computational Capabilities

Research Project

Project/Area Number 23K24822
Project/Area Number (Other) 22H03566 (2022-2023)
Research Category

Grant-in-Aid for Scientific Research (B)

Allocation TypeMulti-year Fund (2024)
Single-year Grants (2022-2023)
Section一般
Review Section Basic Section 60050:Software-related
Research InstitutionThe University of Tokyo

Principal Investigator

鵜川 始陽  東京大学, 大学院情報理工学系研究科, 准教授 (50423017)

Co-Investigator(Kenkyū-buntansha) 塩谷 亮太  東京大学, 大学院情報理工学系研究科, 准教授 (10619191)
穐山 空道  立命館大学, 情報理工学部, 准教授 (80775289)
佐藤 重幸  電気通信大学, 大学院情報理工学研究科, 准教授 (90779464)
Project Period (FY) 2022-04-01 – 2027-03-31
Project Status Granted (Fiscal Year 2024)
Budget Amount *help
¥17,030,000 (Direct Cost: ¥13,100,000、Indirect Cost: ¥3,930,000)
Fiscal Year 2026: ¥2,860,000 (Direct Cost: ¥2,200,000、Indirect Cost: ¥660,000)
Fiscal Year 2025: ¥3,250,000 (Direct Cost: ¥2,500,000、Indirect Cost: ¥750,000)
Fiscal Year 2024: ¥4,290,000 (Direct Cost: ¥3,300,000、Indirect Cost: ¥990,000)
Fiscal Year 2023: ¥3,380,000 (Direct Cost: ¥2,600,000、Indirect Cost: ¥780,000)
Fiscal Year 2022: ¥3,250,000 (Direct Cost: ¥2,500,000、Indirect Cost: ¥750,000)
Keywordsprocessing in memory / 並列計算 / 仮想機械 / ガーベージコレクション / シミューレーター / 省電力計算 / 並列処理 / マネージドランタイム
Outline of Research at the Start

Processing-in-memory (PIM)は計算機能を持ったメモリデバイスである.CPUへのデータ転送を省くことで高速化と省電力化を同時に実現し,現在一般的なプロセッサ中心の計算機システムの限界を打破するものとして期待されている.本研究では,Javaのようなメモリが抽象化されたプログラミング言語(マネージド言語)でPIMを活用できるようにすることを目標とする.そのために,(1)マネージド言語でPIMを活用するためのプログラミングモデルや言語拡張,(2)ランタイムシステムの実装技術,(3)マネージド言語に適したPIMのハードウェアを研究する.

Outline of Annual Research Achievements

本年度は計画に従い1)PIMを利用できるJava処理系の試作,2)ユースケースの研究によるPIMのアプリケーションの構成法の調査,3)シミュレーションによる性能評価のための調査を行った.また,今後計画しているPIMに適したプログラミング言語機能の設計や,実装の高性能化のための基礎研究として,4)メモリアロケータの研究と5)データ構造の自動変換の研究を行った.さらに,本研究を進める中で6)PIMをセキュリテーの強化に応用するアイデアの着想を得たため,その研究も行った.
1)では,「データのあるところで計算する」,「マネージド言語によりシームレスに計算する場所を変える」という概念の検証のために,メモリ内のプロセッサ(メモリプロセッサ)上で動作する簡易なJavaインタプリタと,CPU上で動作するJavaプログラムのオブジェクトのメソッドの実行を,そのオブジェクトを格納するメモリのメモリプロセッサ上で実行する仕組みを試作した.2)では,B-木を応用した探索木のプログラムをPIM向けに開発した.3)では本研究で利用しているPIMであるUPMEMの開発元が公開しているソースコードを調査し,メモリモジュールとメモリアドレスの対応関係をどのように扱うか検討した.また,他の研究グループで開発されたシミュレータを調査した.4)では,通常のDRAM,メモリプロセッサが搭載されたメモリ,スワップ対象のメモリのように,物理的または論理的に特徴の異なるメモリを混載するシステムに向けメモリアロケータの研究を行い,部分領域とサブアロケータを対応させる方法を提案した.5)では,オブジェクトを要素とする配列を選択的に自動的にStructure of Array形式に変換する研究を行った.6)では,これまで研究されていたGPUを使ったホストメモリの監視による信頼性の向上をメモリプロセッサを使っても行えることを示した.

Current Status of Research Progress
Current Status of Research Progress

1: Research has progressed more than it was originally planned.

Reason

本年度に計画していた1)UPMEMを利用できる仮想機械の試作とその性能の検証は計画通り完了し,翌年度に向けての課題が明らかになった.2)ユースケースの研究では,木構造のアプリケーションと正規表現マッチとを計画していたが,木構造のアプリケーションに集中して深く研究した.その結果,UPMEMの性能特性が明らかになり,UPMEM上で高い性能が得られるプログラミングの指針を得ることができた.3)シミュレーションによる性能評価手法の研究では,独自にシミュレータを開発すべく調査を進めていたが,他の研究グループにより単一のメモリプロセッサのシミュレータが発表された.そのため,それを利用する方針に変更して,発表されたシミュレータを調査し,本研究で必要な性能評価手法の一部として利用できそうであると判明した.4)開発環境の研究は,ユースケースの研究と同時にすすめている.成果をまとめるには至っていないが,研究で得られた知見は計画1)にフィードバックして開発効率を向上した.以上より,計画していた研究はおおむね計画通り進展している.
これに加え,今後計画しているPIMに適したプログラミング言語機能の設計や,実装の高性能化のための基礎研究として,メモリアロケータの研究とデータ構造の自動変換の研究を行った.さらに,本研究を進める中でPIMをセキュリテーの強化に応用するアイデアの着想を得たため,その研究も行った.
以上より,当初の計画以上に進展していると判断した.

Strategy for Future Research Activity

当初の計画に基き,UPMEMを利用できるプログラミング言語の機能およびその実行系の開発を行う.ただし,UPMEMアプリケーションの開発のためのSDKが提供する抽象度が当初の想定よりも高い抽象度であり,また,性能特性も当初の想定とは異なることが分かったため,マネージド言語にとらわれず,UPMEMに適したソフトウェア実行系の構成となるように研究を進める.
UPMEMアプリケーションの実装や性能評価で利用しているUPMEMの実機は海外事業者から時間単位でレンタルしており,費用を抑えるために利用時間を抑える必要がある.そのため,シミュレータを利用する工程を増やす.
プログラミング言語と処理系の研究を担当する研究代表者・分担者とシミュレータと評価環境を担当する研究分担者で月1回以上のミーティングを持ち,情報共有を行う.

Report

(2 results)
  • 2023 Annual Research Report
  • 2022 Annual Research Report
  • Research Products

    (10 results)

All 2024 2023 2022

All Journal Article (1 results) (of which Peer Reviewed: 1 results,  Open Access: 1 results) Presentation (9 results)

  • [Journal Article] Collective Allocator Abstraction to Control Object Spatial Locality in C++2024

    • Author(s)
      Hideshima Takato、Sato Shigeyuki、Ugawa Tomoharu
    • Journal Title

      The Art, Science, and Engineering of Programming

      Volume: 8 Issue: 3

    • DOI

      10.22152/programming-journal.org/2024/8/15

    • Related Report
      2023 Annual Research Report
    • Peer Reviewed / Open Access
  • [Presentation] PIM アーキテクチャ上の探索木 B+-forest におけるデータの動的な再配置2024

    • Author(s)
      奥田 光, 秀島 宇音, 鵜川 始陽
    • Organizer
      第26回プログラミングおよびプログラミング言語ワークショップ (PPL2024)
    • Related Report
      2023 Annual Research Report
  • [Presentation] GPU によるメモリ書き換え監視を用いた高信頼アンチチートシステムの提案2023

    • Author(s)
      橋本 直樹, 穐山 空道
    • Organizer
      第35回 コンピュータシステム・シンポジウム (ComSys2023)
    • Related Report
      2023 Annual Research Report
  • [Presentation] Processing-in-Memory 上の探索木に対するバッチクエリの負荷分散に向けて2023

    • Author(s)
      奥田光, 鵜川始陽
    • Organizer
      日本ソフトウェア科学会第40回大会
    • Related Report
      2023 Annual Research Report
  • [Presentation] An Object-Oriented Programming Model for Processing-in-Memory Computing in Java Language2023

    • Author(s)
      Wanhong Huang, Tomoharu Ugawa
    • Organizer
      日本ソフトウェア科学会第40回大会
    • Related Report
      2023 Annual Research Report
  • [Presentation] ストレージストラテジーによる JavaScript オブジェクト配列のメモリ使用量の削減2023

    • Author(s)
      永谷龍彦, 鵜川始陽
    • Organizer
      日本ソフトウェア科学会第40回大会
    • Related Report
      2023 Annual Research Report
  • [Presentation] Processing-in-MemoryアーキテクチャUPMEMに適した探索木に向けての予備調査2023

    • Author(s)
      奥田光,鵜川始陽
    • Organizer
      第25回プログラミングおよびプログラミング言語ワークショップ
    • Related Report
      2022 Annual Research Report
  • [Presentation] 自己書き換え的な InfiniBand Verbs コードを生成するEDSL2023

    • Author(s)
      利根悠司, 佐藤重幸, 田浦健次朗
    • Organizer
      第25回プログラミングおよびプログラミング言語ワークショップ
    • Related Report
      2022 Annual Research Report
  • [Presentation] C++におけるfar-memoryデータ構造のためのアロケータ抽象化2023

    • Author(s)
      秀島宇音, 佐藤重幸, 田浦健次朗
    • Organizer
      第25回プログラミングおよびプログラミング言語ワークショップ
    • Related Report
      2022 Annual Research Report
  • [Presentation] FPGA グラフ処理のための頂点アクセス並列化によるプログラマビリティの高い HLS フレームワーク2022

    • Author(s)
      三冨秀和, 穐山空道, 山崎徹郎, 千葉滋
    • Organizer
      Hot Spring Annual Meeting (HotSPA 2022)
    • Related Report
      2022 Annual Research Report

URL: 

Published: 2022-04-19   Modified: 2024-12-25  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi