一様等方性乱流計算による各種流体計算法の比較と,新型計算機 アーキテクチャによる計算スピード向上の検討 筑波技術大学 産業技術学部 産業情報学科1) 丹野 格1) キーワード:流体シミュレーション,擬似圧縮性法,フラクショナルステップ法,格子ボルツマン法 1.背景 流体のシミュレーションは計算負荷が非常に高く,常に高性能なコンピュータを必要としている。長い間,コンピュータの速度は順調に上がってきた。従来,コンピュータの計算コアの数は 1つであったが,こうしたコンピュータの速度上昇は既に飽和状態にある。 最近では計算速度の向上を目指し,複数の計算コアを搭載したコンピュータが一般的になった。とくに,最近話題となっているグラフィックプロセッシングユニット(GPU)や Intel社の XeonPhiは,数百個の計算コアを搭載することで,圧倒的な計算速度を発揮している。これらは並列コンピュータと見なされる。しかし並列コンピュータは,条件によってはその性能が発揮できない場合もあり,使いこなしが難しい。 これまで,多くの流体解析手法が提案されたが,精度とともに重要になるのが計算速度である。現状では,並列コンピュータに向く手法は計算速度の点では有利になると考えられる。本課題では,いくつかの非圧縮性流体解析を通常のコンピュータ, GPU,XeonPhi上で行い,その計算速度について比較を行う。 2.計算手法と条件 比較した非圧縮性流体解析の手法は,擬似圧縮性法 (ACM),フラクショナルステップ法 (FSM),格子ボルツマン法 (LBM) である。ACM,FSMは空間微分項を 4次精度中心差分で離散化し,実時間微分項の積分は 4段階ルンゲクッタ法を用いた。格子はスタッガード格子を使用した。 LBMはD2Q9 LBGKモデルを使用した。 計算対象は周期境界の二次元一様等方性乱流であり,格子点数は 1024 x 1024である。無次元時刻が 1になるまでの計算時間を比較した。 3.使用したコンピュータ 計算に使用したコンピュータは,下記の通りである。 1. Intel Xeon E5-2620 (CPU) スレッド数 6 2. NVIDIA Tesla C2050 (GPU) 3. Intel Xeon Ph i 7120P スレッド数 244 CPUと XeonPhi用の実行ファイルは,intel C compiler 13.1.2を使用して作成した。並列化のため OpenMPを使用した。実行時のスレッド数は上記の通りである。 XeonPhiの計算はネイティブモードを使用した。 GPU用の実行ファイルは nvccと CUDA library 3.2を用いて作成した。 4.結果 下図に各計算手法の計算時間の比較を示す。 ACMでは GPUと XeonPhiによる計算時間が,CPUのそれに対して大きく減少している。一方, FSMによる結果はそれほど顕著な差が見られなかった。一方, LBMによる結果では,GPUによる計算が非常に高速であった。 LBMは精度の点でも非常に有利であり[1],非常に有望な手法であることが改めて示された。一方, ACM以外では Xeon Phiを用いた場合の計算時間が, CPUと比較してそれほど早くならなかった。Xeon Phiに対する計算プログラムのさらなるチューニングが必要であると思われる。5.参考文献 [1] Tanno, I., Hashimoto, T., Yasuda, T., Tanaka, Y., Morinishi, K., Satofuka, N., Simulation of turbulent flow by lattice Boltzmann method and conventional method on a GPU, Computers & Fluids, volume 80, issue 1, 2013, pp. 453 - 458