研究課題/領域番号 |
16K00078
|
研究機関 | 琉球大学 |
研究代表者 |
長名 保範 琉球大学, 工学部, 助教 (00532657)
|
研究分担者 |
天野 英晴 慶應義塾大学, 理工学部(矢上), 教授 (60175932)
藤田 直行 国立研究開発法人宇宙航空研究開発機構, 航空技術部門, 主幹研究開発員 (70358480)
中條 拓伯 東京農工大学, 工学(系)研究科(研究院), 准教授 (80217736)
|
研究期間 (年度) |
2016-04-01 – 2019-03-31
|
キーワード | FPGA / 数値計算 / 高位合成 / 並列システム |
研究実績の概要 |
本研究プロジェクトでは複数のCPUノードと、それにアクセラレータとして接続された多数のFPGAノードから成る並列システムを構成するためのハードウェアおよびソフトウェアのプラットフォームを開発している。本年度は基本的なプラットフォームをXilinx FPGAだけでなくIntel FPGAでも利用できるように拡張し、さらにC++によって複数のFPGAの高位合成記述とホストのプログラムを一括記述・検証するための手法と基本的なツールの整備を行った。 同様の開発環境として、Xilinx, Intel共にOpenCLを用いてホストのプログラムの一部をFPGAにオフロードする環境を提供しているものの、これらはクラスタ環境には対応しておらず、オフロードする部分をOpenCLに書き換える必要があるのに対して、開発した手法ではオフロード部はC++のままでよく、最低限インタフェイス部分を高位合成むけに書き換えればよいため、アプリケーションの一部をFPGAにオフロードしてチューニングを開始するまでの工数を大幅に削減することができる。この開発環境に、以前にHDLを用いて実装した二次元拡散方程式ソルバのC++版を実装した結果、ほぼ同じ面積と演算スループットが一ヶ月程度で実現できた。また、グループ内で開発してきたJavaベースの高位合成ツールによるクラスタフレームワークへのデザインエントリも可能となり、Javaスレッドによって回路の並列性を明示的に書くことができる点が特徴である。 その他の取り組みとして、Intel Arria 10 SoC上での粒子法シミュレーションの実装およびExpEtherを用いたアクセラレーションの検討を行った。前者からは今後Intel FPGAへの対応を進める上で設計上の重要な知見が得られ、後者からは現在の専用シリアルリンクに代わる結合網を検討する基礎的なデータが得られた。
|