GPU-accelerated 3D MPS Method for Numerical Wave Flume

数値波動水槽は,海岸構造物の設計に革新をもたらす ツールとして認知されつつあるが,砕波・越波・遡上と いったviolent flowを安定して計算しようとすると,粒子 法が計算エンジンとして有力な選択肢となる.しかし, 高解像度3次元計算を実施しようとすれば,粒子法は高 負荷であり,実務面での利用を普及するためには,高速 並列計算を比較的廉価で実現できる計算環境が不可欠と なる. 近年,高速な画像処理を目的として開発されてきた GPU(Graphics Processing Unit)を,科学計算の高速化の 援用に利用する取り組みが活発である.粒子法において も , SPH( Smoothed Particle Hydrodynamics) 法 (Gingold・Monaghan, 1977)に関しては,陽解法型アル ゴリズムのGPU計算への適用が容易なことから,既往の 研究は多数存在する(例えばMcCabeら,2009).しかし SPH法では,経験的な人工粘性を用いるため,粘性項の 評価に十分な合理性がない.一方,M P S(M o v i n g Particle Semi-implicit)法(Koshizuka・Oka, 1996)では, 人工粘性は不要であるが,MPS法の陰解法型アルゴリズ ムへのGPU適用が必ずしも容易ではないため,GPUによ る高速化に関する研究論文は,著者らの知る限りでは存 在しない.そこで本稿では,MPS法高速化の手段として, CUDA(Compute Unified Device Architecture;NVIDIA, 2010-05-10 参照)を利用したGPU導入を検討し,MPS法 コードをGPU対応コードへと移植するための鍵となる事 項を検討し,その高速化に対する効果と計算結果の信頼 性を検証する. なお,本稿で扱うGPUは,NVIDIA社製GT200シリー ズのGPUであり,2010年4月以降に発売されている同社 製新世代GPUであるFermiシリーズに比べ,(特に倍精度 演算の)処理速度が大きく劣る上,高速化する際の制約 が多い.また,CUDAによって作成したコードに関して 他社製のGPU上での完全な動作に保障がないこともあら かじめ記しておく.