単精度 190Tflops GPU クラスタ ( 長崎大 ) の紹介 長崎大学工学部超高速メニーコアコンピューティングセンターテニュアトラック助教濱田剛 1
概要 GPU (Graphics Processing Unit) について簡単に説明します. GPU クラスタが得意とする応用問題を議論し 長崎大学での GPU クラスタによる 取組方針 N 体計算の高速化に関する研究内容 を紹介します. まとめ 2
GPU (Graphics Processing Unit) パソコンの 3D 描画アクセラレータ 演算性能が急速に向上 ~ 1 T flops/board オンボードメモリバンド幅 ~ 160 GB/s 低価格 400 Gflops 程度のボードが 2 万円弱 3
GPGPU General-Purpose computation on GPUs GPU をN 体計算や流体計算などに応用する試み 応用方法はメーカごとに若干異なる. 互換性もなし CUDA (Nvidia) CAL(AMD) Ct (Intel) OpenCL(AMD AMDはやる気満々.Intel/Nvidia. は ) 4
CUDA (Compute Unified Device Architecture) NVIDIA GPU 用プログラミング環境 言語, ライブラリ, コンパイラ 他と比べ GPGPU ユーザーが多い 早期に (2006 年 11 月 ) 公開, 無料 超並列プログラミングが基本 ボードあたり 5 千 ~1 ~ 万スレッド程度の並列性が必要で性能を出すのが大変 GeForce 8800 以降に対応 5
PC クラスタと比べた GPU クラスタ PC クラスタにもいろいろあるが, 大きな違いは 1 つ ノード当たりの演算性能が高い 見方を変えると ネットワーク性能が相対的に低い 1ソケット 100 万円とかの PC クラスタと比べると 同程度の演算性能を 1/10 のコストで手入可能 似ているようで使い方は結構違う 6
超高速メニーコアコンピューティングセンター (Nagasaki Advanced Computing Center: NACC) 平成 21 年度から運営開始 センター長 : 小栗清 短期的な目標 GPU クラスタの応用方法に関する研究 地方大学でも導入可能な低コスト スーパーコンピュータの実現 中 長期的な目標 学内における並列計算機応用研究の促進 次世代 LSI アーキテクチャ コンパイラ技術の開発 7
経緯 平成 19 年度文部科学省科学技術振興調整費 ( 若手研究者の 自立的研究環境整備促進 ) 採択課題 地方総合大学における若手人材育成戦略 と して開始 128 台の GPU クラスタを構築 (2008/3) 平成 21 年度政府補正予算 - 長崎大学概算要求 新世代 GPU 型スーパーコンピューティング環境の実現 でサポート GPU の台数を 256 台に増強 (2008/11) 超高速メニーコアコンピューティングセンター を工学部内に設置 8
応用分野の分類 computation neck Ⅱ Ⅰ embarrassingly parallel non embarrassingly parallel Ⅲ 危険領域 memory band neck Ⅳ NACC では領域 I, II, Ⅳ をターゲット 2009/3/12 理研シンポジウム - 第 3 世代 PC クラスタ 9
NACC GPU クラスタの対象領域 領域 I, II, IV のみをターゲット N 体計算 ( 領域 I, II, IV) 電磁波 流体計算 ( 領域 IV) 画像処理 統計処理 ( 領域 I, IV) 領域 III に分類される応用 ( 並列 FFT, 並列 CFD など ) は視野に入れない ネットワークがボトルネック 高価な高速 低レイテンシネットワークが必要 長崎大では I, II, IV の領域を開拓することを優先 2009/3/12 理研シンポジウム - 第 3 世代 PC クラスタ 10
長崎大学 GPU クラスタ仕様 (2008/11) Core2Quad Q6600 が128 ノード 各ノードに Nvidia GeForce GPU を 8800GTS-OC x 128 ボード 9800GTX+ x 128 ボード 単精度 190 Tflops 1 GbE 48 ポートスイッチ (NetGear) x 4 台をスタック接続 開発コスト : 2 千万円程度 11
NGC190T (NACC GPU Cluster) 部屋面積 24 m 2 部屋給電能力 640 A 1 人で 1 週間もあれば組立可能 2009/3/12 理研シンポジウム - 第 3 世代 PC クラスタ 12
GPU による N 体計算 長崎大学での GPU 研究発展の原点 GPU による N 体計算を深く理解することが他の応用分野に展開する際に重要 以後少々詳しく説明します. 2009/3/12 理研シンポジウム - 第 3 世代 PC クラスタ 13
粒子 N 体計算 基礎方程式 ( 重力 N 体 ) 相互作用 逐次処理部分 ( 積分計算など ) を担当 並列処理部分 ( 相互作用の計算 ) を担当
N 体計算のアルゴリズム Direct Summation Algorithm Tree code O(N 2 ): Small 領域 I に近い問題 O(N logn): Large 領域 II の問題
Modified Tree code original Modified n g =4 n g 個の粒子が相互作用リストを共有 Original Modified List creation cost on the host N N / ng Interaction list length shorter longer
GPU での N 体計算 (Direct Sum.) Gflop/s Hamada 2008 Hamada 2007 R. Belleman 2007 L. Nyland 2007 L.Nyland 2004 M. Harris 2005 M. Harris 2005 S. Portegies Zwart 2007 G70 Cg G70 Cg G80 Cg G80 CUDA G80 CUDA G80 CUDA G80 CUDA 単体 GPU の N-body の性能推移 ( 直接和, 1 相互作用 38 演算換算 ) 17
最適化 Shared Shared Memory の利用 ループアンロール メモリアクセスの最適化 詳細は情報処理学会会誌 情報処理 2009 年 2 月号参照 ( 成見, 濱田, 小西, 情報処理学会会誌 情報処理 2009 年 2 月号, IPSJ-MGN500207) 18
Tree code ではもうひと工夫が必要 Tree code Direct Sum. N= 4 M plummer N=64 K 2009/3/12 理研シンポジウム - 第 3 世代 PC クラスタ 19
性能の出し方 (Direct Sum. の場合 ) 全てのスレッドが別々の i 粒子への力を計算 (i 並列 ) 2009/3/12 i 粒子が数千 ~1 万程度の場合に効率が高い 理研シンポジウム - 第 3 世代 PC クラスタ 20
性能の出し方 (Tree code の場合 ) Multiple Multiple Walks ( Hamada et al 2008 ) 複数の i 粒子のグループ (walk) を一度に計算 21
Multiple Walks による効果 Tree code N= 4 M, plummer, Ncrit = 2000 (Hamada et al. SC08) 22
128GPU での tree code 演算性能 (Hamada et al. SC08) 23
コスト性能 Performance (Tflops) Makino et al. Price/Performance ($/Mflops) 30 Makino et al. 0.01 3 0.3 Makino et al. Kawai et al. Fukushige Kawai et al. et al. Warren et al. Warren et al. Warren et al. Makino et al. NACC (NGC97T) 0.1 1 10 100 1997 2000 2003 2006 2009 歴代 Gordon Bell 賞 ( ピーク性能部門 ) 歴代 Gordon Bell 賞 ( コスト性能部門 )
電力性能 #Direct Sum. (Hamada et. al. submitted to FCCM 09) GPU はCPU よりも良いが FPGA には及ばない 今後は電力性能も優れたアーキテクチャの開発の余地 NACC 長期目標 25
NACC でのその他の応用 電磁場解析 ( 領域 I, IV) GPSGPS 用アンテナの設計 画像レジストレーション ( 領域 IV) 災害時映像を用いた PIV 解析 流体解析 ( 領域 IV) 東シナ海藻類の生理生態学的課程と流体環境の相互作用のモデル構築等々 26
まとめ GPU クラスタが得意とする領域 I, II, IV computation non embar. Ⅱ Ⅲ Ⅰ Ⅳ memory band embar. 領域 III で無理に頑張らないのが長崎大の特徴応用問題がどの領域に属するのかを理解するセンスが GPU クラスタでは特に重要 N 体計算における経験はそれらを理解する上でとても有用 27