Skip to main content
QUICK REVIEW

[論文レビュー] Directionally Unsplit Hydrodynamic Schemes with Hybrid MPI/OpenMP/GPU Parallelization in AMR

Hsi-Yu Schive, Ui-Han Zhang|arXiv (Cornell University)|Mar 17, 2011
Computational Fluid Dynamics and Aerodynamics参考文献 10被引用数 5
ひとこと要約

本論文では、GPUアクセラレートされたAMRコードGAMER内に、方向的に分解されない流体動力学スキーム—MUSCL-Hancock、MUSCL-Hancockの変種、コーナートランスポートアンウィンド—を実装し、ハイブリッドMPI/OpenMP/GPU並列化を用いる。単一GPUでは単一CPUコアと比較して最大101倍の高速化を達成し、断熱的流体動力学テストにおいて広く使われているCPUコードAthenaと比較して100倍の性能優位性を示した。

ABSTRACT

We present the implementation and performance of a class of directionally unsplit Riemann-solver-based hydrodynamic schemes on Graphic Processing Units (GPU). These schemes, including the MUSCL-Hancock method, a variant of the MUSCL-Hancock method, and the corner-transport-upwind method, are embedded into the adaptive-mesh-refinement (AMR) code GAMER. Furthermore, a hybrid MPI/OpenMP model is investigated, which enables the full exploitation of the computing power in a heterogeneous CPU/GPU cluster and significantly improves the overall performance. Performance benchmarks are conducted on the Dirac GPU cluster at NERSC/LBNL using up to 32 Tesla C2050 GPUs. A single GPU achieves speed-ups of 101(25) and 84(22) for uniform-mesh and AMR simulations, respectively, as compared with the performance using one(four) CPU core(s), and the excellent performance persists in multi-GPU tests. In addition, we make a direct comparison between GAMER and the widely-adopted CPU code Athena (Stone et al. 2008) in adiabatic hydrodynamic tests and demonstrate that, with the same accuracy, GAMER is able to achieve two orders of magnitude performance speed-up.

研究の動機と目的

  • GPUアクセラレートされたAMRコードGAMERに方向的に分解されないリーマンソルバーに基づく流体動力学スキームの実装を通じて、精度の向上と対称性の保持を図ること。
  • GPUアクセラレーションとハイブリッド並列化モデルを活用して、天体物理学的シミュレーションにおける高性能コンピューティングを実現すること。
  • 同一の数値的条件下でGAMERの性能を確立されたCPUコードAthenaと直接比較すること。
  • ハイブリッドMPI/OpenMP/GPU実行を最適化し、異種CPU/GPUクラスタを最大限に活用し、性能ボトルネックを克服すること。

提案手法

  • 方向的に分解されないスキーム—MUSCL-Hancock (MHM)、MHMの変種 (VL)、コーナートランスポートアンウィンド (CTU)—を採用し、多次元流体動力学シミュレーションにおける空間的対称性の維持と精度の向上を図った。
  • NVIDIA CUDAを用いてGPU実行を実装し、複数の再構築法 (PLM, PPM)、リーマンソルバー (HLLE, HLLC, Roe)、勾配制限子をサポートした。
  • ハイブリッドMPI/OpenMP/GPU並列化モデルを採用:MPIはノード間通信に、OpenMPはマルチコアCPUのオフロードに、GPUカーネルは流体動力学および重力ソルバーに使用した。
  • 非同期メモリ転送と同時に実行されるCPU-GPU処理を活用し、データ移動と計算を重ねて実行し、無駄な待機時間を削減した。
  • AMRシミュレーションにおける長方形ドメイン分割を適用し、負荷バランスは将来の課題として残した。
  • NERSC Dirac GPUクラスタを用いて、最大32台のTesla C2050 GPUを用いたベンチマーク実験を行い、単一および4コアCPU構成でのCPUオンリーランと比較した。

実験結果

リサーチクエスチョン

  • RQ1方向的に分解されない流体動力学スキームをGPU上で効率的に実装できるか。その際、数値的精度と対称性を維持できるか。
  • RQ2ハイブリッドMPI/OpenMP/GPUモデルは、CPUオンリーや単一GPU実行と比較して、AMRシミュレーションにおける性能とスケーラビリティをどのように向上させるか。
  • RQ3同一の断熱的流体動力学テストにおいて、広く使われているCPUコードAthenaと比較してGAMERが達成できる性能の高速化はどの程度か。
  • RQ4通信オーバーヘッドと負荷の不均衡は、複数GPUを用いたAMRシミュレーションにおける強スケーリングおよび弱スケーリングにどのように影響するか。
  • RQ5非同期メモリコピーと同時に実行されるCPU-GPU処理といった最適化は、ハイブリッドアーキテクチャにおける性能ボトルネックをどの程度軽減できるか。

主な発見

  • 均一メッシュの流体動力学シミュレーションにおいて、単一GPUは1CPUコアと比較して101倍の高速化を達成し、4CPUコアと比較して25倍の高速化を達成した。
  • AMRシミュレーションでは、単一GPUが1CPUコアと比較して84倍の高速化を達成し、4CPUコアと比較して22倍の高速化を達成した。複数GPU間でも良好なスケーリングが得られた。
  • 32GPU構成では、32コアCPUオンリーランと比較して71.4倍、128コアCPUオンリーランと比較して18.3倍の高速化を達成した。MPI通信時間は合計時間の約11%を占めた。
  • 32GPU実験では、弱スケーリング効率が98.8%、強スケーリング効率が85.0%に達し、優れた並列効率を示した。
  • Athenaコードとの直接比較により、同一の精度とテスト条件下でGAMERは2桁(100倍)の性能高速化を達成した。
  • CTUと制約付き輸送を用いた初期のMHDテストでは、単一CPUコアと比較して60倍の高速化を達成した。これにより、GAMERにおける将来のMHDサポートの強力な可能性が示された。

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

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

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

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