プログラムの高速化・並列化サービスの事例

HECToRプロジェクト CONQUESTのスケーラビリティと機能の改善

対象プログラム 電子構造計算
アプリケーション名 CONQUEST
チューニング方法 スピン分極やvan der Waals力のような弱い結合を計算可能にする。マルチコアCPU対応ハイブリッド並列化
成果 OpenMP/MPIハイブリッド並列化により1000コアまで弱スケールした。
[2013年5月掲載]

HECToR dCSE Teamによる物質科学コード(CONQUEST)のスケーラビリティと機能の改善

David Bowler, University College London (UCL)
Lianheng Tong, University College London (UCL)
HECToR CSE Team, Numerical Algorithms Group Ltd (NAG)


英国の国立学術スーパーコンピューティング設備であるHECToR 向けのNAGの計算科学技術(CSE)サポートサービス業務を行っているUCLのHPC専門家は,密度汎関数理論(DFT)コードCONQUESTにおいてスケーラビリティの改善と新しい機能を実装しました。CONQUESTは金属系と共に生体分子系や磁気系のスケーラブルなシミュレーションに利用されています。

CONQUEST は線形スケーリング,あるいはO(N)法であり,NIMS(独立行政法人物質・材料研究機構)とUCL が協同で開発したDFT電子構造コードです。非常に大規模な系(何万もの,何十万ものあるいは何百万もの原子)に対してDFT計算を実行するようコードは設計されています。ab-initio タイトバインディングから平面波の精度をもつフルDFTまでの異なるレベルの精度で実行することができます。CONQUEST はUCLとICLの研究者によって現在使用されています。またオークリッジ国立研究所(ORNL)のJaguar Petaflops スーパーコンピュータ上でも使用されており,日本の10PF「京」スーパーコンピュータ用に選ばれた主要コードの一つになっています。本作業の前のCONQUESTは、比較的単純な結合を持つ系に制限されており、スピン相互作用やvan der Waals相互作用は重要視されていませんでした。このプロジェクトの結果、生体分子系や磁気系の弱い結合を扱うことが可能になります。さらに、これらの新しいコードが大規模HPCリソースでスケーラブルになるよう、並列性能を改善しました。これはCONQUESTの既存のMPI並列にOpenMP並列を実装すること、つまりハイブリッド並列化により達成されました。

UCLの物理・天文学部のDavid Bowler博士はこのプロジェクトの成功について以下のようにコメントしています:「このdCSEプロジェクトでCONQUESTは大きなサポートを受けました。スピン分極計算は密度汎関数理論による実研究計算、特に現状のCONQUEST応用(半導体中のドーパント)において重要なものです。同様に、DFTにおけるvan der Waals相互作用モデリングは、特に生体分子のような極めて重要な新しい領域です。スケーリング性能の改善はOpenMP/MPIハイブリッド並列によってなされ、完璧な弱スケール性を示しており、HECToRを有効に活用することが可能になりました。この開発は実計算と効率性の両方においてCONQUESTに最適なものでした。」

「スピン計算とハイブリッド並列実装により、バルクのシリコン中のドーパントの構造上の計算が可能になりました。これは量子コンピューティングの実装において重要なものです。このプロジェクトは、その開発無では不可能な大きなインパクトを与える可能性を持ちます。」

HECToR
HECToR はResearch Councils を代行する EPSRC により管理されており、英国学術界の科学と工学をサポートする任務を負っています。エジンバラ大学にある Cray XT スーパーコンピュータはUoE HPCx 社によって管理されています。 CSE サポートサービスはNAG 社によって提供されており、高度なスーパーコンピュータの効率的な活用のために、ユーザは確実に適切なHPC専門家にコンタクトできます。CSEサポートサービスの重要な特徴は分散型CSE(dCSE)プログラムです。これは簡潔なピアレビューを経てユーザからの提案に応える、特定のコードのパフォーマンスとスケーラビリティに対処するプロジェクトです。dCSE プログラムは、伝統的なHPCユーザアプリケーションサポートとNAG によるトレーニングで補われる、約 50 の集中的プロジェクトから成り立っています。

これまでに完了した dCSE プロジェクトは、CSEの尽力により可能なコスト削減と新しい科学の優れた適用例をもたらしました。ここで報告されているCONQUESTプロジェクトは成功を収めたパフォーマンス改善であり、新たなサクセスストーリーとなっています。

プロジェクトの背景

このプロジェクトの第1の目標は、スピン分極およびvan der Waals相互作用計算を実装することにより、生体分子系および磁気系へCONQUESTの適用範囲を拡張することです。第2の目標は、電子構造計算コミュニティの研究者が、現代的なHPCシステム(マルチコアシステム)上で正確かつ効率的な第一原理量子力学シミュレーションを大規模スケールで出来るように、CONQUESTの主要なボトルネックに対してOpenMP並列を実装することです。この目標は初期のHPCマシン上で確認された完璧な弱スケール性を再現することでした。

UCLの物理・天文学部のDavid Bowler博士がプロジェクトの主任調査員です。UCLのLianheng Tong博士はNAG CSEチームと密接に協力して20人月でプロジェクトを遂行しました。

プロジェクトの結果

CONQUESTの新規機能であるスピン分極計算は2つの系:面心立方格子のバルクシリコンと体心立方格子のバルク鉄でテストされました。その結果を既知の実験値およびSIESTAによる計算値と比較して検証しました。次にバルクシリコンの大きなユニットセル(262,144原子まで)中のドーパントの電子状態計算を行いました。HECToRフェーズ3の1,2,4ノード上でCONQUESTのスケーラビリティを検証したところ、スピン分極計算部がリニアな弱スケール性を持つことが実証されました。

メニーコアHPCリソース上での一般的な利用におけるCONQUESTの弱スケール性の改善のために、CONQUESTに対してOpenMPによるハイブリッド並列機能を実装しました。既存コードでは行列乗算サブルーチンが大きなボトルネックとなっていました。また、OpenMPの組込みのために新しいMPI並列手法が開発されました。HECToR上でCONQUESTの弱スケール性能は改善され、コア当たり48原子に固定した場合のバルク氷テストケースでは、1000コアまで完璧な弱スケール性を持つことが実証されました。

van der Waals相互作用の実装は生体分子の正確なモデリングを可能にし、CONQUESTを用いたモデリングの将来的な適用範囲拡大に向けた大きな一歩です。OpenMP/MPIハイブリッド並列実装はCONQUESTを用いた今後の計算全てに有益となります。


(注)アロケーションユニット(allocation unit, AU)はHECToRにおけるノード課金単位です。大まかに言えばLinpackベンチマーク(Rmax)を基にした1時間当たり1Tflopsの実行量がkAUに相当します。例えば60Tflopsのプロセッサ群は60kAU/時間に相当します。

詳細なテクニカルレポートは以下で参照いただけます。
http://www.hector.ac.uk/cse/distributedcse/reports/

さらに詳しくお知りになりたい場合は、日本NAG株式会社 コンサルティンググループご相談窓口 https://www.nag-j.co.jp/nagconsul/toiawase.htm (あるいはメール:consul@nag-j.co.jp)までお問い合わせください。

関連情報
MENU
Privacy Policy  /  Trademarks