Processing math: 100%

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

チューニングレポート<要約>:ONESTEP,CASTEP,その他コードにおけるマルチグリッドソルバの改善

*ここに掲載するのは、STFC, Daresbury LaboratoryのLucian Anton博士らによるHECToRレポート「Multigrid solver module for ONETEP, CASTEP and other codes Lucian Anton1, Jacek Dziedzic2&3, Chris-Kriton Skylaris2 and Matt Probert4, 1Scientific Computing Department, STFC, Daresbury Laboratory, 2School of Chemistry, University of Southampton, 3Faculty of Applied Physics and Mathematics, Gdansk University of Technology, Poland, 4Department of Physics, University of York, November 3, 2013 」を要約したものです。

[2017年1月掲載]



背景

このプロジェクトの目標は、典型的な問題に対して少なくとも1000コアまでスケールするハイブリッド並列(MPI + OpenMP)マルチグリッドソルバ・パッケージをFortran 95で開発することです。これはONESTEPhttp://www.onetep.org/[1]およびCASTEP(http://www.castep.org/)[2]で要求される、連続電荷分布、可変誘電関数、およびディリクレ、ノイマン、周期境界条件および混合境界条件、線形ポアソン方程式(PE)および非線形ケースのポアソン-ボルツマン方程式(PBE)に対してチューニングされました。

·成果の纏め

並列マルチグリッドソルバDL_MGは以下の仕様で開発されました:

  1. マルチグリッドソルバの標準コンポーネントは、ディリクレおよび完全な周期的境界条件に対してのみですが、線形および非線形ケースに実装されました。
  2. 一般的な3D領域分割に対して、MPIトポロジーとOpenMPスレッドのブロックループを用いてハイブリッド並列が実装されました。PEとPBE問題に対して、1024コアまで良好なスケール性が示されました。
  3. コードはONESTEPに統合されました。CASTEPについては基本的なテストのみ完了しています。
  4. このソルバーは、他のアプリケーションで簡単に利用可能な独立したライブラリとして開発されました。

·溶媒モデル計算について

陰解法としての溶媒和モデルは、溶媒をモデル化する計算において便利な方法です。ここで溶媒は、溶質を取り囲み、溶質により分極し、溶質を逆極性化しようとすることで応答する誘電性連続体として表されます。 第一原理電子構造計算ではこれはセルフコンシステントに考慮され、その結果、電子密度は溶媒の存在によって変形されます。 また、必要に応じて複数の顕な溶媒分子(例えば、露出したタンパク質活性部位と水素結合を形成する水分子)を含めることができます。 多くの溶媒和モデルが文献に報告されています[3]。
電子構造計算にはマルチグリッドソルバを用います。従って、誘電率、電荷密度、および電位はすべて連続で、カルテシアン格子上で表現されることを仮定しています。
しかしながら、電子構造計算ではイオンのコアは点電荷で表現されており、扱いには注意が必要です。ここでは、smeared-ion形式[8]と呼ばれる手法を用いて、これら点電荷をガウシアンで表現します。この時、エネルギーと力を以前と同じ値に保つために補正項が必要になります。
通常誘電率は、溶質の周りの適切に定義されたキャビティの外側では溶媒バルク値に設定され、キャビティ内では1に近い値に設定されます。空洞の形状決定では、誘電率を電子密度の関数として定義して行います。これは最初にFattebertとGygi [10]によって提案され、後にScherlisら[9]およびDziedzicら[11]およびAndreussiら[13]により拡張された方法で、キャビティ境界における不連続性を避けて、急峻ですが連続的な変化で置き換えたものです。これがONETEP [11]とCASTEP [12]で用いられている方法です。

意味のある溶媒和エネルギーを得るためには、真空中と溶媒中の計算間で境界条件をコンシステントに扱うことが重要です。真空中での電子構造計算にしばしば使用される周期的境界条件は、溶媒の誘電遮蔽による溶液中の状況をうまく表現できません。ゼロ境界条件は、オープン(クーロン)境界条件の近似として使用することができます[10]。 こうして真空中の計算は、オープン境界条件の実現[14]のための利用可能な手法の1つを使用するか、または周期境界条件下で実行された後補正するやり方が可能です[9]。よりエレガントで物理的に妥当なやり方は、全ての計算をオープン境界条件下で行うことですが[11,14]、通常は、電子構造コード内の静電相互作用(コア-コアおよび擬コア電子)の処理の変更を必要とします。さらに困難なことは、マルチグリッドソルバの境界条件(すなわち、シミュレーションセル面上のポテンシャル値)の生成です。真空中および溶液中での計算に適した手法は文献 [11]に、また採用された近似の効果は文献[8]に記載されています。
溶媒和エネルギーは、ポアソン方程式の解の精度に敏感であり、多くの場合2次離散化は不十分です[8]。高次方法[9]とdefect-correction[8]と呼ばれる手法の両方が使用され、かなりの成功を収めています。ONETEPとCASTEPの両方は後者を採用しています。その主な利点は、2次マルチグリッドソルバーで十分であり、反復手続きによって高次精度が得られ、その後のソルバー呼び出しが初期解の欠陥補正に使用できることです。参考文献[8]を参照してください。

マルチグリッド法の実装

マルチグリッド法は、様々な偏微分方程式から導出される広範な線形および非線形方程式に対して、最適または近最適な、非常に効率的なソルバを与えます。マルチグリッド法の最適性は、反復ソルバと格子変換の組み合わせによるもので、次の2つの原理に基づきます:(i)平滑化反復:短波長誤差成分を広範囲の反復手順で一様に減衰させること、(ii)格子コースニング:平滑化誤差は、大きな情報の損失無に粗いドに転送格子へ渡すことができます。
マルチグリッド法の一般的かつ高い効率を持つ重要な点は、様々なレベルの並列化が可能なことです:例えば、グリッドが位相的に隣接するものとハロのみ交換するMPIタスクに分割することができ、平滑化、制限、および延長のための更新操作は、OpenMPスレッドで並列化することができます[4]。

·DL_MGについて

DL_MGでは、PEとPBEに対する標準的な方法を用います。グリッド・ステンシルは、有限差分法の各レベル(幾何学的アプローチ)における微分演算子の離散化によって導出されます。マルチグリッドレベルを生成する際は、粗いレベルで効率的な解を得るために、グローバルグリッドサイズは[q1×2n1+1; q2×2n2 +1; q3×2n3+1]でなくてはなりません。ここで、q1≈q2≈q3≤20です。このコースニング(粗化)は全次元の格子定数を2倍にすることで行われ、平滑化はGauss-Seidelレッドブラック法を使用し、格子間転送はhalf-weight restriction と線形補間で実行されます。非線形ケース(PBE)ではfull approximation scheme (FAS)を使用します。これらのコンポーネントを使用すると、誘電率と電荷密度計算モデルが滑らかで、強い異方性を持たない限り、PEとPBEに最適で効率的なソルバにすることが可能です[4]。

マルチグリッド反復では、一般に並列計算で推奨されるVサイクル[4,5]を選択しました。
MPI並列処理はデータ分割に使用されます。
OpenMP並列処理は、Vサイクルループをカバーする並列領域と、ステンシル係数を構築するサブルーチンで実装しました。

·性能

DL_MGの性能は、現実的なシステム(T4リゾチームタンパク質、2615原子)について、ONETEPを用いて系を513x513x577格子上で離散化した溶媒和計算で測定されました[8]。結果は、大きなコア数において、DL_MGが以前のソルバに比べてほぼ16倍速いことを示しています。DL_MGを使用した場合のONETEPは、128 MPIランクまで良好なスケール性を示しました。現在DL_MGは、ハイブリッドモードで最大1024個のコアまでスケールしています。これにより、現在のモデルより5?10倍多くの原子を使用する次世代のタンパク質モデルに有用となるでしょう。

謝辞

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

文献

[1] C.-K. Skylaris, P. D. Haynes, A. A. Mostofi, and M. C. Payne, Introducing ONETEP: Linear-scaling density functional simulations on parallel computers, J. Chem. Phys. 122 084119 2005.
[2] S. J. Clark, M. D. Segall, C. J. Pickard, P. J. Hasnip, M. J. Probert, K. Refson, and M. C. Payne, First principles methods using CASTEP, Z. Kristallogr. 220 567 2005.
[3] J. Tomasi, B. Mennucci, R Cammi, Quantum Mechanical Continuum Solvation Models, Chem. Rev. 105 2999 2005.
[4] Ulrich Trottenberg, Cornelius Oosterlee and Anton Schuller, Multigrid, Academic Press, 2001.
[5] Edmond Chow, Robert D. Falgout, Jonathan J. Hu, Raymong S. Tuminaro, and Ulrike Meier Yang, ''A Survey of Parallelization Techniques for Multigrid Solver'' Parallel Processing For Scientific Computing, Heroux, Raghavan, and Simon, editors, SIAM, series on Software, Environments, and Tools 2006.
[6] Samuel Williams, Dhiraj D. Kalamkar, Amik Singh, Anand M. Deshpande, Brian Van Straalen, Mikhail Smelyanskiy, Ann Almgren, Pradeep Dubey, John Shalf, and Leonid Oliker, ''Optimization of Geometric Multigrid for Emerging Multi- and Manycore Processors'', SC12, November 10-16, 2012, Salt Lake City, Utah, USA.
[7] N.A. Baker, Poisson-Boltzmann Methods for Biomolecular Electrostatics, Methods in Enzymology 383 2004.
[8] J. Dziedzic, S.J Fox, T. Fox, C.S. Tautermann and C.-K. Skylaris, Large-scale DFT calculations in implicit solvent - a case study on the T4 lysozyme L99A/M102Q protein, Int. J. Quant. Chem. 113 6 2013.
[9] D.A. Schelis, J.L. Fattebert, F. Gygi, M. Cococcioni and N, Marzari, A unified electrostatic and cavitation model for first-principles molecular dynamics in solution, J. Chem. Phys. 124 7 2006
[10] J.L. Fattebert and F. Gygi, Density functional theory for efficient ab initio molecular dynamics simulations in solution, J. Comp. Chem. 23 6 2002.
[11] J. Dziedzic, H.H. Helal, C.-K. Skylaris, A.A. Mostofi and M.C. Payne, Minimal parameter implicit solvent model for ab initio electronic-structure calculations, Europhys. Lett. 95, 43001 2011.
[12] H.H. Helal Including solvent effects in first-principles simulations of biological systems: Development, implementation, and application of an implicit solvent model, PhD thesis, University of Cambridge 2010.
[13] O. Andreussi, I. Dabo, and N. Marzari, Revised self-consistent continuum solvation in electronic-structure calculations, J. Chem. Phys. 136, 064102 2012.
[14] N.D.M. Hine, J. Dziedzic, P. D Haynes and C.-K. Skylaris, Electrostatic interactions in finite systems treated with periodic boundary conditions: Application to linear-scaling density functional theory, J. Chem. Phys. 135, 204103 2011.
[15] T. L. Beck, Real-space mesh techniques in density functional theory, Rev. Mod. Phys. 72, 1041 2000.
[16] Cray XE-6 system, a compute node has 2 AMD Interlagos processors32cores, 32GB RAM across 4 NUMA domains.
[17] University of Southampton HPC cluster, 16 2.6GHz Intel Xeon E5-2670 cores per node, 64GB RAM per node.
[18] http://ccpforge.cse.rl.ac.uk
関連情報
MENU
© 日本ニューメリカルアルゴリズムズグループ株式会社 2025
Privacy Policy  /  Trademarks