Aero Project

概要

私たちAeroグループは流体解析ソフトの高速化を目指していて, 一般にはComputational Fluid Dynamics (CFD)と呼ばれる研究分野に属しています. 流体の計算には多くの浮動小数点演算が含まれているため、 従来はスーパーコンピュータやクラスタなどを利用して計算を行っていました。 ところが、近年流体解析が航空翼などの設計ツールに使用されるようになってきたために、 より精度の高い解析を必要とするようになってきました。 現状ではスーパーコンピュータなどを利用しても数日から数週間の解析時間を必要としてしまい、またそのコストも問題となっています。 そこで私たちはJAXAとの共同研究のもとにFPGAを複数使用した専用計算機の構築を目指しています。 FPGA (Field Programmable Gate Array)とは、回路を何度でも再構成することのできるリコンフィギャラブルデバイスとして知られ、 アルゴリズムに合わせて専用回路を構築することができます。 このデバイスを用いることで安価ながらスーパーコンピュータ並の性能を出すことが可能であるといわれています。



CFD発展の必要性

CFDは流体の運動に関する方程式をコンピュータで解く手法のことで, 私達の研究はCFDの発展に結びつきます.
従来,航空機の主翼や機体等が受ける空気流による影響は 風洞実験によって調べられていました. 風洞実験とは主翼や機体のサンプルを作成し, 実際に風洞内で流れを発生させる方法で, 莫大な費用および時間が必要となります.
CFDが発展していくと今まで時間,費用の問題で調べることのできなかったパターン まで調べることができるようになり,結果として以下のような恩恵を得られます.

  1. 航空機の安全性向上,燃料効率の向上
  2. 開発コストの低減,開発期間の短縮
  3. 宇宙開発の促進

近年の航空機の設計では,実際にCFDが導入され風洞での実験回数が削減されています. 例えば1980年代に設計されてBoeing 767の際は,77種類の翼が風洞で試験されました. 一方,2000年代に行われたBoeing 787の設計にはCFDが導入され, 風洞で試験された翼は11種類にまで減りました. 以上のことから,CFD技術は今後ますます発展していくことが望まれます.



Boeing 787

対象アプリケーション "FaSTAR"

FaSTARとはJAXAが開発しているCFDアプリケーションで, 私達が高速化の対象としているアプリケーションになります. FaSTARの支配方程式にはNavier-Stokesの方程式が採用されているため, 下記方程式を解いていくことになります. \[ \frac{\partial}{\partial t}\int_{V}^{}{\bf Q} \cdot dv + \int_{S}[{\bf F}({\bf Q})-\frac{1}{Re}{\bf F_{v}}({\bf Q})]\cdot {\bf ds} = 0 \] ※上記式中の\({\bf Q}\)は保存量ベクトル,\({\bf F}\)は非粘性ベクトル,\({\bf F_{v}}\)は粘性ベクトル,\({\bf ds}\)は面積を絶対値に持つ外向き垂直方向ベクトル,\(Re\)はレイノルズ定数となります.

上記Navier-Stokesの方程式を解く大まかな手順は下記のようになります.

  1. 対象とする空間を格子で分割する
  2. 各格子上の\({\bf F}\),\({\bf F_{v}}\)を算出する. この際,当該格子および周辺格子の\({\bf Q}\)値を用いて算出.
  3. 各格子状の\({\bf F}\),\({\bf F_{v}}\),\({\bf Q}\)を用いて時間積分をし, \({\bf Q}\)を時刻t+1の状態に更新します. その後,再びステップ2にもどり,目標の時刻になるまでシミュレーションを続行します.



FaSTAR演算手順のイメージ



FaSTARの特徴

非構造格子法の採用

FaSTARは現実の航空機設計にも応用できるようにするため, 空間の分割方法に非構造格子法を採用しています. 上記で説明したとおり,ある格子の粘性ベクトル等を求めるには周辺格子の保存量が必要になるのですが, 非構造格子法を用いると周辺格子へのアクセスパターンは複雑でグリッドデータごとに異なるようになります. したがって,格子間でのデータ依存が複雑になるため, GPU等で演算を並列化して高速化する手法が適用できません. このランダムかつ複雑なメモリアクセスパターンをどのように解消するかがポイントになります.





格子分割方法の比較

豊富な算出方法

研究例

Zynqクラスタ

疲れたからまた今度にゃん



Zynqクラスタのイメージ

Partial Reconfigurationによる面積削減

Out-of-Order機構

Our Skills

  • Xilinx FPGA Design ( 100% )
  • Zynq-7000 AP SoC ( 80% )
  • High Level Synthesis ( 60% )
  • VerilogHDL Design ( 50% )
  • Fortran Programming ( 30% )
  • Fluid Dynamics ( 40% )

Publications

International Conference

  • Mohamad Sofian Abu Talip ,Takayuki Akamine, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "Dynamically Reconfigurable Flux Limiter Functions in MUSCL Scheme" , 7th International Workshop on Reconfigurable Communication-centric System-on-Chip, To appear.

  • Takayuki Akamine, Kenta Inakagata, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "Reconfigurable Out-of-Order Mechanism Generator for Unstructured Grid Computation in Computational Fluid Dynamics" , 22nd International Conference on Field Programmable Logic and Applications(FPL'12), To appear.

  • Kenta Inakagata, Takayuki Akamine, Hirokazu Morishita, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "ASPE: an Abstraction Framework using ALU Arrays for Scalable Multiple FPGAs system" , The 17th Workshop on Synthesis And System Integration of Mixed Information Technologies(SASIMI'12), March 2012.

  • Mohamd Sofian Abu Talip, Takayuki Akamine, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "Cost Effective Implementation of Flux Limiter Function using Partial Reconfiguration" , International Symposium on Applied Reconfigurable Computing(ARC'12), March 2012.

  • Takayuki Akamine, Kenta Inakagata, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "An Implementation of Out-Of-Order Execution System for Acceleration of Computational Fluid Dynamics on FPGAs" , International Workshop on Highly-Efficient Accelerators and Reconfigurable Technologies(HEART'11), Jun 2011.

  • Kenta Inakagata, Hirokazu Morishita, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "Design of ALU Array Based Dataflow Machine for Multi-FPGA System", Workshop on Designg Methods and Tools for FPGA-Based Acceleration of Scientific Computing (DATE'11), Mar 2011.

  • Hirokazu Morishita, Kenta Inakagata, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "RER: a tuning tool for implementing a computational pipeline across multiple FPGAs", The 16th Workshop on Synthesis And System Integration of Mixed Information technologies (SASIMI'10), Oct 2010.

  • Hirokazu Morishita, Kenta Inakagata, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "Implementation and Evaluation of an Arithmetic Pipeline on FLOPS-2D: Multi-FPGA System", International Workshop on Highly-Efficient Accelerators and Reconfigurable Technologies (HEART'10), Jun 2010.

  • Kenta Inakagata, Hirokazu Morishita, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "Modularizing Flux Limiter Functions for a Computational Fluid Dynamics Accelerator on FPGAs", 19th International Conference on Field Programmable Logic and Applications (FPL'09), Sep 2009.

  • Hirokazu Morishita, Yasunori Osana, Naoyuki Fujita, Hideharu Amano, "Exploiting Memory Hierarchy for a Computational Fluid Dynamcis Accelerator on FPGAs", International Conference on Field Programmable Technology (ICFPT'08), Dec 2008.

Domesic Conference

  • 杉本成, 天野英晴, "CFDパラメタリックサーベイ用ZYNQクラスタ", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF),Sep 2015.

  • 赤嶺公之, 田舎片健太, 長名保範, 藤田直行, 天野英晴, "FaSTARのFPGA実装におけるOut-of-Order機構の実装と評価", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF),Nov 2011.

  • 赤嶺公之, 田舎片健太, 長名保範, 藤田直行, 天野英晴, "FaSTARにおける流束の面積分計算高速化のためのOut-Of-Order機構", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF), May 2011.

  • 田舎片健太, 森下博和, 長名保範, 藤田直行, 天野英晴, "複数のFPGAを用いたデータフローマシン構築の検討", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF), Jan 2011.

  • 森下博和, 田舎片健太, 長名保範, 藤田直行, 天野英晴, "マルチFPGAプラットホームFLOPS-2Dにおける演算パイプラインの実装", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF), May 2010.

  • 藤田直行, "実用CFDコードのFPGA回路化におえる技術課題の実験的検討", 第23回数値流体力学シンポジウ厶, Dec 2009.

  • 長名保範, 森下博和, 田舎片健太, 藤田直行, 天野英晴, "FPGAによる大規模CFDの実現へ向けた取り組みとその課題", 第23回数値流体力学シンポジウ厶, Dec 2009.

  • 藤田直行, "FLOPS2Dの設計コンセプト 〜CFDを中心とした浮動小数点カスタム計算機〜" 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF), Dec 2009.

  • 森下博和, 田舎片健太, 長名保範, 藤田直行, 天野英晴, "マルチFPGAシステムFLOPS-2Dへ向けたパイプライン構築手法の検討", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF), Dec 2009.

  • 横山隆哲, 森下博和, 長名保範, 藤田直行, 天野英晴, "FPGAによるUPACSサブルーチンの高速化", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF), May 2009.

  • 田舎片健太, 森下博和, 長名保範, 藤田直行, 天野英晴, "CFD専用計算機FLOPS-2Dへ向けたUPACS制限関数郡モジュール化の検討", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF), May 2009.

  • 森下博和, 長名保範, 藤田直行, 天野英晴, "複数のFPGAを用いた高性能流体解析システムの検討", 電子情報通信学会 リコンフィギャラブルシステム研究会(RECONF), May 2008.


Members

Master's Course Students(2nd year)

ZynqによるCFD用クラスタ環境の構築


Undergraduate Students

Zynqを用いた粒子法の高速化


team member
Takaaki Miyajima
Jaxa's Researcher

GPUによる粒子法の高速化


Ph.D.(University of the Ryukyus)

BOSS


team member
Naoyuki Fujita
Jaxa's Researcher

Jaxaのすごく偉い人