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

2017 Fiscal Year Research-status Report

密結合演算加速機構による通信と演算の融合に関する研究

Research Project

Project/Area Number 15K00166
Research InstitutionThe University of Tokyo

Principal Investigator

塙 敏博  東京大学, 情報基盤センター, 准教授 (30308283)

Project Period (FY) 2015-04-01 – 2019-03-31
Keywords演算と通信の融合 / GPUクラスタ / FPGA / OpenCL / 高性能インタコネクト
Outline of Annual Research Achievements

GPU (Graphics Processing Unit)に代表される演算加速装置を搭載したクラスタにおいて,演算加速装置間の直接通信を可能にする密結合演算加速機構TCAアーキテクチャを提案し,特に低遅延通信の効果によりStrong-scalingに有効であることを示してきた.これらの知見から,これまで開発したFPGAによる通信機構PEACH2,3の通信エンジンに加え,柔軟な演算機能を融合することで,さらなる高速化,高効率化を目指している.従来のFPGAでは,ハードウェア記述言語を用いてインタフェースも含めて自ら設計する必要があり開発が困難であったが,近年OpenCLなどで書かれたプログラムを回路として動作させることが可能になっている.そこで,本研究では,指示文によりプログラム中のオフロード部分を指定し,FPGA論理を生成し.高速な通信エンジンに対して動的に計算部分を組み込むことにより,通信と計算の高度な融合を実現する.
本年度は,Arria10 FPGA搭載ボードを用いて,OpenCLにより階層型行列ベクトル積などを実装し評価を行った.その結果,実装自体は容易に行えるものの,元のコードのまま,あるいは一般的な最適化テクニックを施しても高い性能を得ることができなかった.そこでFPGAにあらかじめ用意されている論理ブロックおよびブロック間の配線を有効に使えるよう意識してコードを書き換えることで,高い性能が得られることがわかった.
今後は次世代FPGAであるStratix10搭載ボードを用いて評価するとともに、次世代のFPGA環境で提供されるソフトウェアスタックに対応しつつ,通信インタフェース部分を設計していく予定である.

Current Status of Research Progress
Current Status of Research Progress

4: Progress in research has been delayed.

Reason

Altera社Arria10搭載のOpenCL対応FPGA評価ボードを用いて,OpenCLによりいくつかのコードを実装し,評価を行った.OpenCLコンパイラの改善により,事前の回路規模の見積もり等は容易にはなったが、依然として数時間をかけて論理合成してみて初めて性能が判断できる状態であり,生産性が非常に劣る点について本質的には変わらない.
以前のコンパイラではバグが多く,エミュレータでは動作するコードが論理合成に失敗するなどの不具合が多くみられ,その回避のために多くの労力を割く必要があった.新しいバージョンのコンパイラでは,不具合の修正だけでなく,最適化はあまり行わずに短時間で結果を得ることもできるようになっているが,評価ボードを当該バージョンに対応させるなど環境を整備するために多大な労力を必要とした.
また,単純な行列積であっても,通常知られているプログラミングのテクニックである,ループアンローリングやブロッキングなどを用いても高速化は限定的で,FPGA内部のロジック間の接続に忠実にデータフローを記述する形にすることでようやく内部の演算回路を十分に使うことができることがわかった.

Strategy for Future Research Activity

Terasic社製DE5a-Netボード,または次世代Stratix10搭載ボードを用いて,これまでPEACH-2, PEACH-3で実施してきたFPGAによる高速通信エンジンを移植し、NVIDIA社製 Tesla P100を用いて,基本性能について評価・検証する。
その上で、ボード上でOpenCLを使うためのBSP (Board Support Package)に対して、PEACH-2, PEACH-3相当の機能を追加する.またさらに、外部ネットワーク出力を利用することで,ノード間接続への拡張も試みる.
一方で,OpenACCやOpenMP 4.5のような指示文ベースの言語を元に,デバイスでの論理合成を行えるよう,LLVMコンパイラ,またはOmniコンパイラを用いたプロトタイプ実装を行う.

Causes of Carryover

(理由)Arria10ボードを使った評価に時間が取られ,ボード間接続を実現するまでに至らなかったことや,次世代製品の発売開始が遅れたことから,新しい評価ボードの入手を諦めた.

(使用計画)Stratix10世代のFPGAボード入手を検討中である.合わせて,ボード間を接続するためのケーブル等についても購入を検討している.

  • Research Products

    (3 results)

All 2018 2017

All Presentation (3 results) (of which Int'l Joint Research: 1 results)

  • [Presentation] OpenCLを用いたFPGAによる階層型行列計算2018

    • Author(s)
      塙 敏博,伊田 明弘,星野 哲也
    • Organizer
      情報処理学会ハイパフォーマンス研究会
  • [Presentation] Design Experience on Intel HARP2 Platform using OpenCL2018

    • Author(s)
      Toshihiro Hanawa, Taisuke Boku
    • Organizer
      FPGAs in High Performance Computing Mini Symposium, SIAM-PP18
    • Int'l Joint Research
  • [Presentation] 階層型行列計算のFPGAへの適用2017

    • Author(s)
      塙 敏博,伊田 明弘,星野 哲也
    • Organizer
      情報処理学会ハイパフォーマンス研究会

URL: 

Published: 2018-12-17  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi