研究課題/領域番号 |
21H04869
|
研究種目 |
基盤研究(A)
|
配分区分 | 補助金 |
応募区分 | 一般 |
審査区分 |
中区分60:情報科学、情報工学およびその関連分野
|
研究機関 | 筑波大学 |
研究代表者 |
朴 泰祐 筑波大学, 計算科学研究センター, 教授 (90209346)
|
研究分担者 |
佐野 健太郎 国立研究開発法人理化学研究所, 計算科学研究センター, チームリーダー (00323048)
山口 佳樹 筑波大学, システム情報系, 教授 (30373377)
小林 諒平 筑波大学, 計算科学研究センター, 助教 (40783709)
佐藤 三久 国立研究開発法人理化学研究所, 計算科学研究センター, 副センター長 (60333481)
藤田 典久 筑波大学, 計算科学研究センター, 助教 (70787671)
辻 美和子 国立研究開発法人理化学研究所, 計算科学研究センター, 研究員 (80466466)
|
研究期間 (年度) |
2021-04-05 – 2025-03-31
|
研究課題ステータス |
交付 (2024年度)
|
配分額 *注記 |
41,730千円 (直接経費: 32,100千円、間接経費: 9,630千円)
2024年度: 8,970千円 (直接経費: 6,900千円、間接経費: 2,070千円)
2023年度: 10,530千円 (直接経費: 8,100千円、間接経費: 2,430千円)
2022年度: 10,530千円 (直接経費: 8,100千円、間接経費: 2,430千円)
2021年度: 11,700千円 (直接経費: 9,000千円、間接経費: 2,700千円)
|
キーワード | 高性能計算 / FPGA / GPU / 複合演算加速システム / 高性能アプリケーション / 異種複合演算加速装置 / FPGAプログラミング / 複合演算装置プログラミング / 並列FPGA処理 / 複合演算加速環境 / FPGA高位合成 / OpenACC / Ethernet Frame / HBMメモリ / 演算加速装置 / 並列プログラミング |
研究開始時の研究の概要 |
大規模高性能並列システムにおいて、従来のGPUによる演算加速に加え、FPGAを追加導入することで、性能を大幅に向上させる次世代演算加速システム技術である、多重複合型演算加速型スーパーコンピュータの基盤技術を開発する。両演算加速デバイスを統一的にプログラミング可能とし、分散メモリ並列モデルであるPGASシステム上でこのプログラミングを可能とする環境を構築する。
|
研究実績の概要 |
複数の演算加速機構としてGPUとFPGAの両者を用いた次世代スーパーコンピューティングのプラットフォーム、言語処理系、並列FPGA処理技術、アプリケーション実行、FPGAストレージに関する総合的な研究を実施した。 GPUとFPGAの統合プログラミング環境として、OpenACC単一言語(C言語実装)で記述したコードを商用または研究用デバイスコンパイラをバックエンドとして呼び出すメタコンパイラのプロトタイプ実装により、宇宙物理の実アプリケーションコードをGPUのみの演算加速に比べ、最大で10倍高速化することに成功した。また、HBMを搭載したFPGAにおける高性能アプリケーション実行APIのプロトタイプ開発を行った。FPGA間通信網については、これをEthernet Frameでデータストリーム処理する環境を構築した。また、FPGAをコントローラとしてSSDを高速かつ柔軟に制御するシステム等の研究開発を行った。 これらの成果として10編の査読付き学術論文の公表と、12件の国際会議発表(うち5件は招待講演)を行った。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
FPGAとGPUの複合デバイスプログラミング環境として、米国ORNLで開発中のFPGA対応OpenACC研究用コンパイラであるOpenARCと、GPU対応OpenACC商用コンパイラであるPGI社コンパイラを両デバイスのバックエンドコンパイラとして用いるメタコンパイラMHOATをプロトタイプ実装し、一般的なHPCコードにおける記述量と性能のトレードオフを明らかにした。また、宇宙物理学の実アプリケーションであるARGOTコードをMHOATでコンパイルし、GPUとFPGAを搭載する単一ノード上で、GPUだけの計算に比べFPGAを追加投入することで最大10倍の性能向上を達成し、当初予定の実績を達成した。(朴・佐藤・辻チーム) Ethernet Frameを用いてデータストリームをFPGA間で送受信する回路、および通信網に対しデータストリームを送受信するHLSのプログラミング環境の実装が進んでいることから、計画通りに進捗している。(佐野チーム) ユーザ回路における利用性を高めるためオープンソースの LiteX を用いた実装へと拡張した。また,基板の改版も進め,ストレージを32台まで接続できるようになり、当初予定を達成した。(山口チーム) ノードを跨ぐGPU+FPGA連携宇宙物理アプリケーションコードの演算加速の性能評価を実施した.また,GPU+FPGA連携宇宙物理アプリケーションコードを1ノード実行から2ノード実行に拡張し,その性能評価を実施した。これらを支援する通信環境として、MPIにおける集団通信と同等の機能を、独自開発のFPGA間通信フレームワークCIRCUSに実装し、FPGA間並列通信に関する研究を計画どおり推進した。(小林・藤田チーム)
|
今後の研究の推進方策 |
GPU・FPGA混載ノードにおける宇宙物理コードARGOTのノード間並列化を推進する。GPU間通信はFPGAに依存するよりもホスト側のInfiniBandを用いた方が効率が高いが、FPGA間通信は独自開発フレームワークであるCIRCUSを用いることで、通信オーバヘッドを極限まで減らすことができる見込みである。また、CIRCUS上に通信フロー制御とエラーチェック機構を組み込み、実アプリケーションでのユーザの利便性を向上させる。(朴・藤田チーム) FPGA間通信機構をEthernet Frameで実現することにより、Ethernetスイッチを用いた大規模化が容易となることを実アプリケーションコードで評価する。複数FPGAによる並列化とその通信をCIRCUSによるものとEthernetスイッチによるもので比較し、FPGA間通信網に関する研究をまとめる。(佐野チーム) FPGA制御によるSSDの利用効率を一層高めるとともに、実アプリケーションの実装を通した評価を進め、FPGAをSSDのインテリジェントコントローラとして完成することを目指す。(山口チーム) FPGA向けOpenACCコンパイラを、OpenARCだけに頼るのではなく、独自開発のバックエンドコンパイラとして実装し、FPGA特有の性能最適化に関する手法の開発を進める。(佐藤・辻・朴チーム) FPGA間通信システムCIRCUSの運用上の実用性を高め、各種アプリケーションで利用可能とするための集団通信ライブラリの完成を目指すと共に、フロー制御の実装によるCIRCUSの実用化を目指す。(藤田チーム)
|