関連情報
ホーム > 製品&サービス > コンサルティングサービス > HPCチューニングサービス > 事例一覧 > HECToRプロジェクト - チューニングレポート<要約>:オーダーN密度汎関数法コードConquestへのスピン分極およびファンデルワールスエネルギー補正の組込み

HPCチューニングサービスの事例

チューニングレポート<要約>:オーダーN密度汎関数法コードConquestへのスピン分極およびファンデルワールスエネルギー補正の組込み

*ここに掲載するのは、ユニバーシティカレッジ・ロンドンのLianheng Tong博士によるHECToRレポート「dCSE Project on Adding Spin Polarisation and van der Waals Energy Correction to Conquest, Lianheng Tong, Tuesday, 2012/06/05」を要約したものです。

[2017年10月掲載]


背景

生物化学には、生体系の量子力学的性質が支配する重要な問題が多く存在します。生体分子とその環境(例えば水の存在)の複雑さのため、分子の一部を孤立させた量子力学的研究では、分子の重要な特性を再現して理解するには不十分です。理想的には、生体分子の大部分あるいは全部を環境に置いて、現代的なHPCプラットフォーム上で高性能計算を可能にするのが望まれています。同時に遷移金属やファンデルワールス相互作用も考慮して系をモデリングすべきです。

Conquestは、線形スケール密度汎関数法(DFT)コードで、大規模コア上で優れたスケール性が実証されています。この良好なスケール性が、生体分子の大規模量子力学研究のプラットフォームとしての魅力です。このプロジェクトは、Conquestの拡張として、スピン分極、およびファンデルワールス相互作用[3]の第一原理密度汎関数の実装を行います。

やるべきことは、Conquestへスピン分極の双線形形式を追加することです。これはスピンの2つの状態を含むことを意味します。Conquestは元々スピン分極は含まれず、データ構造もそれを反映した構造を持ちます。このため、スピン自由度の追加には大規模なコードの改修が必要です。線形スケール性はスピンを追加しても影響はありません。これは、スピンの実装が既存のデータと計算の分散配置を利用するためです。ここでは既存の通信や計算のやり方に変更は生じません。スピンの実装はコード全体に渡りデータ構造の変更が必要になり、ファンデルワールス汎関数はこのスピンに依存した量を用いるため、先にスピン実装を行うこととしました。

このスピン実装により以下の計算が可能になります:


目標と成果

プロジェクトは6人月掛かり、2013年12月に終了しました。

  1. ユーザが指定した値に固定したスピン分布を用いた計算
  2. ユーザ指定のスピン分布から開始して、全電子数を維持したままスピン分布を変化させて、最小エネルギーを計算する。この差は緩和されたスピン分極を意味します。

これとは対照的に、ファンデルワールス汎関数は比較的独立したモジュールとして実装可能です。これはDion et al.[3]やRoman-Perez et al.[15]の仕事に密接に倣うものです。


スピン分極実装とテスト

既存のConquestはスピン非分極計算しか行えません。これは一つのスピン成分に関する行列とグリッドデータのみが計算され、アップスピンとダウンスピンが一致する寄与が因子2を付加されて計算されていることを意味します。プロジェクトの目的は、これを双線形スピン分極計算へ拡張することです。ここで、各スピンチャネルに関連する物理量は、全電子数が保存されるという制限のもとに計算されます。
Conquestは、最適化されたサポート関数を基底関数として用い、様々な量子力学演算子の行列表現を与えます。サポート関数それ自身は、擬原子軌道(PAO)あるいは局所化されたblip(Bスプライン)関数どちらかの線形結合で生成されます[2]。各サポート関数の中心は原子上にあり、指定の範囲にある基底関数のみがサポート関数に寄与します。これが、サポート関数の局所性を保証して計算の線形スケール性を確保します。線形結合の係数は、エネルギー最小化計算で最適化されています。
理想的には、各スピンチャネルの物理量に対してグリッド上の行列とデータが分離されるのに加えて、サポート関数をスピン依存にすることによる利点があります。これは、基底関数係数に自由度を与え、より最適化された状態エネルギーを与えることが可能になります。しかしながら、サポート関数をスピン依存にすると、線形代数演算コアやFFT、MPI通信以外の全てのサブルーチンに影響を及ぼします。よってこのプロジェクトでは、作業時間の制約を考慮して、サポート関数はスピンチャネルと独立にすることとしました。

スピン分極実装のテストでは、強磁性でない、つまり基底状態でネットスピン分極がゼロの面心立方格子のバルクシリコン、および、体心立方格子で強磁性であり原子当たり2.12の実験的磁気モーメントを有するバルク鉄、の2ケースを用いました。これらは共に、LDA汎関数を用いた非セルフコンシステントな力の計算を行いました。
バルクシリコンについては、5.4282オングストロームの格子パラメータを有する8原子のシミュレーションセルが使用され、72×72×72の積分グリッドサイズと、13×13×13グリッドのk点を用いました。スピン分極計算は期待どおりに0に収束しました。
バルク鉄については、2.8690オングストロームの格子パラメータを有する2原子のシミュレーションセルが使用され、積分グリッドサイズは36×36×36で13×13×13グリッドのk点を用いました。スピン分極計算を、2,4,6,8の初期磁化状態でテストしました。結果は、既知の実験値およびSIESTAのab initio分子動力学パッケージからの計算により検証されました。
Conquestの線形スケール性は、一般にスピン分極を加えても影響を受けません。これは、スピン分極実装が既存のConquestカーネルを使用してデータと計算を分散するため通信と計算のメカニズムが変更されないためです。

ファンデルワールス補正の実装とテスト

Conquest内に、Dionら[3]に依る密度汎関数計算へのファンデルワールス補正のab-initio計算を実装します。このエネルギー補正項は、ファンデルワールス相互作用に本質的な長距離補正を含む交換相関汎関数です。
新しい汎関数は、GGA汎関数からの交換項とLDA汎関数からの補正項と非局所汎関数からの寄与から成ります。
これは実空間における二重積分を含むため、直接計算するのは実用的ではありません。シミュレーションセルに控えめな64x64x64グリッドを用いた場合でも、646回という膨大な回数の波動関数評価が必要となってしまいます。
ここでは、Roman-Perezら[15]が提案した方法に従って、この積分をFFTを用いて実装しました。

ファンデルワールス相互作用汎関数(vdW-DF)のテストには、2つのベンゼン環で構成される系を用いました。これらのリングは、同心軸に沿って他のリングの上に直接重ねられています。
テスト結果は、vdW-DF計算が可能なSiesta ab initio分子動力学パッケージの結果と比較されました。ConquestおよびSiestaの両方のシミュレーションセルは、格子パラメータ20.0オングストロームの立方体に設定しました。使用された格子点の数は128×128×128でした。
Siestaはセルフコンシステント計算でConquestはそうではありませんでしたが、2つの結果は一致しました。
vdW-DF計算におけるConquestのスケーラビリティは、HECToR Phase 3ノード(ノードあたり32コア)の1,2,4ノードを使用して検証しました。ファンデルワールス補正サブルーチンは、実行時間全体のかなりの部分を占めていました。計算ノードの数が増えると、この部分の計算が他のコードと比較して効率が悪くなることも観察されました。
膨大な数のグリッドを用いた積分が実行されるため、ファンデルワールス計算は比較的高価な計算です。ベンゼンのテスト計算では、これはエネルギー最小化計算(SCFステップ)の6回分のコストを持ちます。グリッド上での積分は良好なスケーラビリティを示しますが、コードの全体的なスケーラビリティは、vdW-DF機能におけるFFTの広範な使用により劣化します。Conquestは現在独自のFFT実装を使用しており、より大規模な計算では最適化されたFFTライブラリを使用することで効率化されるでしょう。
ファンデルワールス補正によるメモリ使用量は、標準計算時のメモリ使用量のほぼ2倍です。メモリ使用量が多いのは、機能を近似するために使用される関数形式によるものです。しかしながら、これはSiestaでも同様です。

スピンの実装は既にConquestコードリポジトリに提出されており、ファンデルワールス機能の実装も提出予定です。

謝辞

このプロジェクトは、NAG Ltd.が運営するHECToRの分散計算科学および工学(CSE)サービスの基に実行されました。英国の国立スーパーコンピューティング・サービスである、HECToR:英国リサーチ・カウンシル・ハイエンド計算サービスは、リサーチ・カウンシルを代行するEPSRCが管理しています。そのミッションは英国学術界の科学および工学の研究支援です。HECToRスーパーコンピューターは、UoE HPCx Ltd.およびNAG Ltd.のCSEサポートサービスにより管理運営されています。

文献

[1] D. R. Bowler. Linear-scaling density matrix minimisation and electron number conservation. Technical report, University College London, 2005.
[2] D. R. Bowler, I. J. Bush, and M. J. Gillan. Practical methods for ab initio calculations on thousands of atoms. Int. J. Quantum Chem., 77(5):831-842, 2000.
[3] M. Dion, H. Rydberg, E. Schroder, D. C. Langreth, and B. I. Lundqvist. Van der waals density functional for general geometries. Phys. Rev. Lett., 92(24):246401, 2004.
[4] S. Goedecker, M. Teter, and J. Hutter. Separable dual-space gaussian pseudopotentials. Phys. Rev. B, 54(3):1703-1710, Jul 1996.
[5] B. Hammer, L. B. Hansen, and J. K. Norskov. Improved adsorption energetics within density-functional theory using revised perdew-burke-ernzerhof functionals. Phys. Rev. B, 59:7413-7421, Mar 1999.
[6] G. Kresse and J. Furthmuller. Efficiency of ab-initio total energy calculations for metals and semiconductors using a plane-wave basis set. Computational Materials Science, 6(1):15-50, July 1996.
[7] R. M. Martin. Electronic Structure: Basic Theory and Practical Methods. Cambridge University Press, 2004.
[8] A. H. R. Palser and D. E. Manolopoulos. Canonical purification of the density matrix in electronic-structure theory. Phys. Rev. B, 58(19):12704-12711, Nov 1998.
[9] J. P. Perdew, K. Burke, and M. Ernzerhof. Generalized gradient approximation made simple. Phys. Rev. Lett., 77(18):3865-3868, Oct 1996.
[10] J. P. Perdew, K. Burke, and M. Ernzerhof. Perdew, burke, and ernzerhof reply:. Phys. Rev. Lett., 80(4):891, Jan 1998.
[11] J. P. Perdew and Y. Wang. Accurate and simple analytic representation of the electron-gas correlation-energy. Phys. Rev. B, 45(23):13244-13249, June 1992.
[12] J. P. Perdew and A. Zunger. Self-interaction correction to density-functional approximations for many-electron systems. Phys. Rev. B, 23(10):5048-5079, 1981.
[13] W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery. Numerical Recipes in Fortran 77: The Art of Scientific Computing, volume Volume 1 of Fortran Numerical Recipes. Cambridge University Press, second edition edition, 2001.
[14] P. Pulay. Convergence acceleration of iterative sequences. the case of scf iteration. Chem. Phys. Lett., 73(2):393-398, 1980.
[15] G. Roman-Perez and J. M. Soler. Efficient implementation of a van der waals density functional: Application to double-wall carbon nanotubes. Phys. Rev. Lett., 103(9):096102, Aug. 2009.
[16] L. Tong. Metal conquest. Technical report, UCL and NAG, Mar. 2011.
[17] A. S. Torralba, D. R. Bowler, T. Miyazaki, and M. J. Gillan. Non-self-consistent density-functional theory exchange-correlation forces for gga functionals. J. Chem. Theory Comput., 5(6):1499-1505, June 2009.
[18] I. Wolfram Research. Mathematica edition: Version 7.0, 2008.


Results matter. Trust NAG.

Privacy Policy | Trademarks