Skip to main content
QUICK REVIEW

[論文レビュー] Density Functional Theory calculation on many-cores hybrid CPU-GPU architectures

Luigi Genovese, Matthieu Ospici|ArXiv.org|Apr 9, 2009
Matrix Theory and Algorithms参考文献 2被引用数 6
ひとこと要約

この論文は、ダウベシースウェーブレットに基づく第一原理電子構造計算コードであるBigDFTの、ハイブリッドCPU/GPUアーキテクチャにおけるGPUアクセラレート実装を提示する。二重精度算術を用いたフルDFT計算において最大6倍の高速化を達成し、個々のカーネルでは最大20倍の加速を実現しているが、大規模並列環境における非均一なCPU/GPU比においても収束性とスケーラビリティを保持している。

ABSTRACT

The implementation of a full electronic structure calculation code on a hybrid parallel architecture with Graphic Processing Units (GPU) is presented. The code which is on the basis of our implementation is a GNU-GPL code based on Daubechies wavelets. It shows very good performances, systematic convergence properties and an excellent efficiency on parallel computers. Our GPU-based acceleration fully preserves all these properties. In particular, the code is able to run on many cores which may or may not have a GPU associated. It is thus able to run on parallel and massive parallel hybrid environment, also with a non-homogeneous ratio CPU/GPU. With double precision calculations, we may achieve considerable speedup, between a factor of 20 for some operations and a factor of 6 for the whole DFT code.

研究の動機と目的

  • 体系的で直交するウェーブレット基底を用いて、ハイブリッドCPU/GPUスパコン上でスケーラブルかつ高性能なDFT計算を可能にすること。
  • 大規模系における立方則スケーリングDFTの計算ボトルネックを、二重精度を用いたGPUでの主要演算の加速によって克服すること。
  • 既存のCPUベースの並列化と完全に互換性を持たせ、ハイブリッドクラスタにおける非均一なCPU/GPU比をサポートすること。
  • GPUアクセラレーションが、元のDFTコードの収束性や効率性を損なわないことを実証すること。

提案手法

  • CUDAを用いて、BigDFTコード(ダウベシースウェーブレットに基づく)を拡張し、線形代数や畳み込みなどの計算負荷の高い演算をGPUカーネルにオフロードする。
  • Kohn-Shamハミルトニアンの評価、電子密度、交換相関ポテンシャルといったDFTのコア演算のためのGPUカーネルを実装する。
  • CPUとGPU間のデータ転送を最適化し、レイテンシを最小限に抑え、1枚のGPUカードに対して複数のCPUコアをサポートする。
  • MPIベースのドメイン分割を維持することで、元のコードの体系的収束性と並列効率を保持する。
  • 二重精度浮動小数点算術を全般に使用し、ab initioシミュレーションにおける数値的安定性を確保する。
  • 非均一な構成をサポートするハイブリッドアーキテクチャであり、GPUカード1つあたり異なる数のCPUコアを割り当てても性能劣化がない。

実験結果

リサーチクエスチョン

  • RQ1ダウベシースウェーブレットに基づくフル電子構造コードを、収束性と並列効率を保持したまま、ハイブリッドCPU/GPUアーキテクチャに効率的に移植できるか?
  • RQ2二重精度算術を用いてGPUで主要DFT演算を加速することで、どの程度の性能向上が達成できるか?
  • RQ3非均一なハイブリッド環境において、1つのGPUカードに複数のCPUコアを割り当てた場合、コードのスケーリング特性はどのように変化するか?
  • RQ4GPUアクセラレートDFTコードは、さまざまな系のサイズや境界条件においても、性能と安定性を維持できるか?
  • RQ5ホットスポットや通信ボトルネックを導入せずに、プロダクションレベルのDFTコード全体の性能をどの程度向上できるか?

主な発見

  • 12ノードのハイブリッドシステム(ノードあたり2つのGPU)で、フル計算において全体で約6倍の高速化を達成した。
  • 特定の演算、特に線形代数および畳み込みルーチンにおいて、個々のGPUカーネルは最大20倍の加速を示した。
  • 1枚のGPUカードに複数のCPUコアを割り当てた場合でも、優れた収束性と並列効率を維持した。
  • 高比率のCPU/GPU比(例:1GPUあたり4コア)においても、性能劣化は最小限に抑えられ、わずかに2倍の遅延にとどまった。これは優れたロードバランスを示している。
  • 非均一なCPU/GPU比をサポートしており、大規模並列ハイブリッドクラスタにおいても効果的にスケーリングされた。
  • GPUアクセラレーションは元のCPUベースの並列化と完全に互換性があり、フルコード実行においては、性能ボトルネックは観察されなかった。

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

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

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

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