Skip to main content
QUICK REVIEW

[論文レビュー] A comparison of techniques for solving the Poisson equation in CFD

Nick Brown|arXiv (Cornell University)|Oct 27, 2020
Wind and Air Flow Studies参考文献 8被引用数 7
ひとこと要約

本論文は、MONC気象モデルの動的核におけるポアソン方程式を解くために、直接FFTと反復解法(GMRES、BiCGStab、CG)を評価し、最大32,768コアのCray XC30上で実行した際の実行時間、スケーラビリティ、メモリ使用量を比較している。特注のBiCGStab解法が最短実行時間(4.98e-3 s)を達成したが、効率的な相互接続を備えたFFTは良好なスケーリングを示した。一方、反復解法はエクサスケール規模の並列処理において優位になることが示された。

ABSTRACT

CFD is a ubiquitous technique central to much of computational simulation such as that required by aircraft design. Solving of the Poisson equation occurs frequently in CFD and there are a number of possible approaches one may leverage. The dynamical core of the MONC atmospheric model is one example of CFD which requires the solving of the Poisson equation to determine pressure terms. Traditionally this aspect of the model has been very time consuming and-so it is important to consider how we might reduce the runtime cost. In this paper we survey the different approaches implemented in MONC to perform the pressure solve. Designed to take advantage of large scale, modern, HPC machines, we are concerned with the computation and communication behaviour of the available techniques and in this text we focus on direct FFT and indirect iterative methods. In addition to describing the implementation of these techniques we illustrate on up to 32768 processor cores of a Cray XC30 both the performance and scalability of our approaches. Raw runtime is not the only measure so we also make some comments around the stability and accuracy of solution. The result of this work are a number of techniques, optimised for large scale HPC systems, and an understanding of which is most appropriate in different situations.

研究の動機と目的

  • MONC気象モデルの動的核における圧力項の高速化を図り、性能のボトル neck を解消すること。
  • 大規模HPCシステム上での直接FFTと反復解法における計算と通信のトレードオフを評価すること。
  • CFDおよび気象モデル分野における将来のエクサスケールコンputingワークロードに最適なスケーラブルで効率的な解法を特定すること。
  • さまざまな問題サイズとプロセッサ数を想定した場合に、解法選択が実行時間、メモリ使用量、安定性に与える影響を評価すること。
  • 問題の設定、システム規模、ハードウェア特性に応じて最適な解法を選択するための指針を提供すること。

提案手法

  • 3次元フーリエ変換にFFTWを用いた直接FFT法を実装し、XおよびY方向にスライス分割を施し、Z方向に列単位の三重対角行列の解法を適用する。
  • 特注の反復解法(BiCGStab、CG)を開発し、PETScベースのGMRESおよびBiCGStabを比較のため統合する。行列フリーな演算を用いる。
  • Cray XC30システム上で、1コアあたり65,536個の局所グリッドポイントを想定した弱スケーリング実験を実施し、最大32,768コアまででの性能を測定する。
  • 異なる解法タイプとシステム構成における実行時間、通信量、メモリ使用量、安定性を測定する。
  • 特にFFTの転置ステップにおけるデータ移動パターンの分析を通じて、通信オーバーヘッドの影響を評価する。
  • コア数の増加に伴う性能の傾向を比較することでスケーラビリティを評価し、特に将来のエクサスケールシステムにおける32,768コアを超えるスケーリングを想定する。

実験結果

リサーチクエスチョン

  • RQ1CFDの動的核におけるポアソン方程式を解く際、直接FFTと反復解法の間で実行時間と通信コストにどのような差が生じるか。
  • RQ2特に32,768コア以上で、FFTと反復解法のスケーラビリティはどの程度か。
  • RQ3局所問題サイズを拡大した場合、解法選択がメモリ使用量に与える影響は何か。
  • RQ4MONCモデルの圧力補正ステップにおいて、性能、安定性、メモリ効率のバランスが最も良い解法は何か。
  • RQ5通信最適化を施したFFTの実装は、将来のエクサスケールアーキテクチャにおいてオーバーヘッドを低減し、スケーリングを向上させ得るか。

主な発見

  • 特注のBiCGStab解法が平均して4.98e-3秒という最短の解法時間を達成し、オーバーヘッドが低いためPETScベースの解法やCGを上回った。
  • Cray XC30では効率的なAries相互接続のおかげで直接FFT法が良好なスケーリングを示したが、スケールが大きくなると通信コストが顕著になった。
  • PETScベースの反復解法は、行列とベクトルの抽象化に起因するオーバーヘッドが大きく、大規模な局所ドメインには不適切であった。
  • 特注の反復解法は最もメモリ効率が良く、ハローエクスチェンジには数バッファのみを必要とし、FFTに次いで高い効率を示した。
  • 32,768コアを超えるスケールでは、通信量が少なく、負荷分散が優れていることから、反復解法がFFTを上回ると予想される。
  • FFTパイプライン内の途中段階のY次元の転置処理を排除することで、通信量を50%削減でき、スケーリングが著しく向上すると考えられる。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。