9-2 GPUスーパーコンピュータにおけるマルチスケール流体解析の高速化

−局所細分化格子において通信を削減する領域分割手法を開発−

図9-4 局所細分化格子(LMR)法における領域分割法

図9-4 局所細分化格子(LMR)法における領域分割法

LMR の2次元の模式図を示します。折線矢印は従来手法(a)と提案手法(b)で生成した一筆書きで格子を辿る順序を表し、これを格子点数が等しくなるように分割することで、青、赤、緑の3つの小領域が生成されます。

 

図9-5 計算領域の形状と計算速度の比較

図9-5 計算領域の形状と計算速度の比較

1.84億格子を用いた流体解析において並列数を上げたときの計算速度を示します。凡例内の図は各手法により8分割された計算領域の形状で、提案手法により各小領域の表面積や接続数が小さくなっています。提案手法により、従来手法に対して最大1.82倍の高速化を達成しました。

 


物体や壁などの周りを流れる風などの流体は、物体から離れた領域の大域的な流れと壁の近くの小さい渦が共存するマルチスケールな現象です。そのような流体を効率的に解析するために、原子力機構と東京工業大学(東工大)は流れのスケールに応じて格子解像度を変化させる局所細分化格子(Local Mesh Refinement: LMR)法に基づく数値流体解析(Computational Fluid Dynamics: CFD)コードを共同で開発してきました。本研究では、東工大で開発されたLMR法CFDコードに対して、原子力機構が新しい領域分割法を提案することで、計算速度が向上しました。

本研究で採用した直交格子のLMR法では、必要な解像度に応じて一つの格子を8つの格子に細分化する操作を繰り返すことで局所的に細分化された格子を生成します。この手法に基づき、物体近傍のみに高解像度格子を集中させることで、一様格子と比較して格子点数を0.715%まで削減しました。一方で、複数のプロセスを用いた並列計算における領域分割法に課題が残っていました。

従来の手法では、一本の空間充填曲線(Space-Filling Curve: SFC)を用いて領域分割を行っていました(図9-4(a))。SFCはいわゆる「一筆書き」の数学的表現で、図9-4の事例では空間をN字型に辿る操作を格子解像度に応じて階層的に構築することで、全ての格子を辿る一筆書きを自動的に生成します。これを格子点数が等しくなるように分割することで計算負荷が均一な領域分割が可能となります。SFCはLMR法の領域分割で標準的に用いられていますが、一方で、複雑に入り組んだ断面形状が形成されると、通信量(各小領域の表面積)や接続数(各小領域が互いに隣り合う数)が大きくなります(図9-5)。

そこで本研究では、計算領域を直交格子状に粗く分割してから各領域で局所的なSFCを生成し、それを接続することで異なる順序の一筆書きを構築して領域分割を行う手法を提案しました(図9-4(b))。SFCを局所的な領域に閉じ込めることで、複雑な断面形状を回避することができ(図9-5)、並列計算における通信量及び通信の接続数を削減することができます。提案手法により、従来手法に比べて通信量が最大で1/3程度に削減され、通信の最大接続数が1/2~1/3に削減されました。このような並列処理の改善により、1.84億格子を用いた流体解析の並列処理性能を大きく向上し、128プロセスを用いた並列計算において1.82倍の高速化を達成しました(図9-5)。

本研究の一部は、日本学術振興会科学研究費基盤研究(S)(JP26220002)、研究活動スタート支援(JP19K24359)、若手研究(JP21K17755)、HPCIシステム利用研究課題(課題番号: hp180146)、学際大規模情報基盤共同利用・共同研究拠点(課題番号: jh200050)支援の下で得られた成果です。

(長谷川 雄太)