Journal of Computer Chemistry, Japan
Online ISSN : 1347-3824
Print ISSN : 1347-1767
ISSN-L : 1347-1767
速報
FMOプログラムABINIT-MPの整備状況2022
望月 祐志中野 達也坂倉 耕太渡邊 啓正佐藤 伸哉奥脇 弘次秋澤 和輝土居 英男大島 聡史片桐 孝洋
著者情報
ジャーナル フリー HTML

2022 年 21 巻 4 号 p. 106-110

詳細
Abstract

We have been developing the ABINIT-MP program for fragment molecular orbital (FMO) calculations over 20 years. Several improvements for accelerated processing were made after the release of Open Version 2 Revision 4 at September 2021. Functionalities were enhanced as well. In this short report, we summarize such developments toward the next release of Revision 8.

Translated Abstract

We have been developing the ABINIT-MP program for fragment molecular orbital (FMO) calculations over 20 years. Several improvements for accelerated processing were made after the release of Open Version 2 Revision 4 at September 2021. Functionalities were enhanced as well. In this short report, we summarize such developments toward the next release of Revision 8.

1 序論

フラグメント分子軌道(FMO)法 [1, 2]は,分割-統治系の計算手法の中で最もよく使われており,応用事例も豊かである.ABINIT-MP [3, 4]は私たちが研究開発と公開を続けているFMOプログラムで,Openシリーズの状況については,本誌で継続的に報告してきた [5,6,7,8,9].シリーズ最新のリリース版は,2021年9月のVersion 2 Revision 4 (以下Ver. 2 Rev. 4と略記) [10]であるが,その後も高速化と大規模系への対応,ならびに機能の拡充を行ってきた.本稿では,2022年11月時点での整備状況をまとめる.

2 Ver. 2 Rev. 4後の高速化 (A64FX向け)

富士通A64FXスパコン向けの高速化では,最も利用頻度が高いFMO-MP2計算を対象にしている.Openシリーズの1系の最終版であるVer. 1 Rev. 22のOpenMP/MPI混成並列実行でのコスト分析では,2電子積分の生成がジョブ全体の1/2,HF計算関係の処理が1/4を占めていたので,Ver. 2 Rev. 4での第一段階の改良対象は積分の生成とした.ABINIT-MPの積分計算は,小原・雑賀の垂直漸化関係式(VRR) [11]に基づいており,軌道タイプの4つの組み合わせに応じてコードジェネレータによって生成されたルーチン群が処理している.これらの中で相対的にコストの大きいルーチン15個に対し,OCL指示詞の挿入とスカラ変数化などを含めてSIMD (Single Instruction Multiple Data)化を図った.積分以外でも通信量の低減などの改善を行った結果,Ver. 2 Rev. 4ではVer. 1 Rev. 22比べてFMO-MP2ジョブが1.2∼1.3倍高速化された(対象系に依存) [9].

Ver. 2 Rev. 4のリリース後,2電子積分ルーチン群の追加の改良として,レジスタスピルの低減を期待してループの分割を行い,軌道タイプの組み合わせに依るが,20%∼30%の加速を得た(SIMD化とループ分割を併用).また,Fock行列の構築ルーチンでは(1/2)n(n=1,2,3)の因子を乗じて添字の同値性判断のif分岐を排除する改良(Figure 1の擬似ループ構造のスケッチを参照)で当該処理を従前に比べて30%加速した.

Figure 1.

 Sketch of Fock matrix construction.

上記の積分ルーチンのループ分割,Fock行列構築のif分岐削除をした作業版をVer. 2 Rev. 5とした.この版に対し,モノマー段階での自己無撞着電荷(SCC)のアンダーソン外挿をこれまでのFock行列ベースから密度行列ベースに変更するオプションを追加したものをVer. 2 Rev. 5′とした.これとは別に,やはりモノマーSCC段階のコスト低減を意図して2電子積分をIn-coreモードで処理できるバッファリング機能を追加して,Ver. 2 Rev. 5"を作成した.積分バッファリングは4つの軌道の角運動量の和で制御され,メモリが潤沢に利用できれば全量保持も可能であるが,デフォルトではd関数が1つまでとしている.そして,これらRev. 5の派生作業版2つをまとめたのがRev. 6で,2022年12月時点でベンチマークテストだけでなく後述の機能拡張の調整作業に供している.

Table 1に,20残基の人造タンパク質Trp-Cage (PDB-ID=1L2Y)のFMO-MP2ジョブを,理研の「富岳」と同じA64FX系のスパコンである名古屋大学の「不老」 Type Iで実行したタイミングと加速をまとめた.ノード数を10で,OpenMPを24スレッドで1ノードに2プロセスを割り当てる設定とし,MP2部分は全段DGEMM処理 [12]とした.表中では,リリースないし取りまとめた日付も示してある.Ver. 1 Rev. 22を基準にした加速では,Ver. 2 Rev. 4に対してRev. 5系では追加改良の効果が見てとれ,特にRev. 6でcc-pVDZ基底の場合には顕著である(積分バッファリングのオプションはデフォルト).他の複数のタンパク質でもテストをしているが,Ver. 1 Rev. 22に比べると1.4倍から2倍程の高速化となっている.留意点は,モノマーSCCでのアンダーソン外挿の密度ベースでのオプションが必ずしも有効ではないことで,系によっては大反復の回数が増えてジョブ時間が増えてしまう場合もある.

Table 1. FMO-MP2 job timing of Trp-Cage at Flow Type I .

3 Ver. 2 Rev. 4後の大規模系への対応

2020年度の「富岳」の試行利用段階での新型コロナウイルスの特別プロジェクトでは,ABINIT-MPはVer. 1 Rev. 22であったため,スパイクタンパク質は単一構造(PDB-IDはクローズ型が6VXX,オープン型が6VYB)で水和条件無しで扱わざるを得なかった.計算結果をまとめた論文 [13, 14]を出すことはできたが,忸怩たる思いが強く残り,Ver. 2 系での大規模系対応の動機となった.そこで,Ver. 2 Rev. 4では可視化解析のためだけの配列群の削除の第一段階を行い,1.1万フラグメントの扱いが容易に可能となった [9].これにより,インフルエンザウイルスのヘマグルチニン3量体とFab抗体2個の複合体(PDB-ID=1KEN)の分子動力学(MD)シミュレーション由来の液滴モデルのセット100個をFMO-MP2/6-31G*レベルで「富岳」上で直截に計算できた.ここで,液滴のタンパク質部分は2.3千残基,残りは水分子とイオンである.

2022年度の後半から,スパイクタンパク質のクローズ型の新しい構造(PDB-ID=6XLU)に再挑戦している.Figure 2に示すように,今回は表面の糖鎖も含めて扱っている(糖はボール表示で,3本のタンパク鎖は青赤緑で区別されている).タンパク質部分は3.3千残基で,水を含めた総フラグメント数は1.8万である.残念ながら,配列の整理が未だ十分でないためか,A64FXスパコンではVer. 2 Rev. 6でも,この1.8万フラグメントのモデルを「そのまま」でFMO-MP2計算することができなかった.そこで発想を変え,タンパク質との相互作用がほぼ無い遠方の水分子群はクラスターとしてまとめ,実効的にフラグメント数を低減するスクリプトを新たに開発した.このクラスタリング前処理によって,フラグメント数は1万弱にまで低減されてVer.2 Rev. 6で計算可能となった.並列計算の観点から見ても,水分子が1つのフラグメントにまとめられて酸素原子の数が4,5個となるため,残基部分と比べて重原子数の差が小さくなって粒度バランスが改善されるメリットが期待できる.1構造サンプルでのタイミングとしては,「富岳」の8ラックで48スレッド/3072プロセスの設定でFMO-MP2/6-31G*ジョブが2.1時間で完了している.

Figure 2.

 Droplet model of Spike Protein.

4 SX-Aurora TSUBASAへの対応

前報 [9]では,Ver. 1 Rev. 22のNECのSX-Aurora TSUBASA(SX-ATと略記)のベクトルエンジン向けの高速化について,2電子積分ルーチン群へのループ分割の手入れにより,flat MPI実行のFMO-MP2/6-31G*ジョブで作業前に比べて4.6倍の加速を得たことを報告した.2022年度の作業では,Ver. 2 Rev. 4系へ改良点を移植し,さらにOpenMP/MPIの混成並列にも対応させた.また,加速性能も追加チューニングによって僅かに向上している(4.8倍).SX-ATは,東北大学のAOBA-A,大阪大学のSQUID,JAMSTECの地球シミュレータ(ES4)として利用されており,ABINIT-MPのライブラリ整備の上でも外すことのできないHPCI拠点であるので,Ver. 2 Rev. 4のベクトル化版の導入も滞りなく進めていく予定である.

5 Ver. 2 Rev. 4後の計算機能の拡充

FMO計算で重用される相互作用エネルギー解析では,新型コロナウイルスの変異株に関する報告 [15]でも用いた局所密度分散(LRD) [16]による分散力系安定化の評価を成分分析(PIEDA)の結果リストで表示できるようにした.これにより,電子相関の導入によるHFでの過剰イオン性の低減の寄与との識別が可能となった.塩基対のスタックモデル(2+2の積層)のテストでは,分散力系の安定化は水素結合では4割,スタッキングでは8割となり,リーズナブルと思われる [17].PIEDAでは,FMO環境静電ポテンシャルを再現するRESP電荷 [18, 19]を用いた静電(ES)項の算定評価の機能も導入しつつある.

CIS (Configuration Interaction Singles) [20]とその2電子励起補正であるCIS(D) [21]は,多層FMO近似の下で各々文献 [22]と [23]でABINIT-MPの立教ローカル版への実装を報告していたが,その機能をOpen Ver. 2系に移植・復活させた.また,CIS(D)に対する独自の追加補正 [24,25,26]も利用できる.Figure 3に,Trp-CageのTrpを励起状態領域に設定した励起エネルギーの計算結果のリストを示す(基底関数はcc-pVDZ).ここで,U2は軌道緩和エネルギー,T2*U1はMP2差分相関エネルギー,T1*U1はMP2誘起緩和エネルギーで,MP2振幅(T2)の部分再規格化(PR)のオプションも入れている(詳細は文献 [24]を参照).CISでの過大評価が相関・緩和の補正によって改善されることが確認できる.T1*U1とPRの両方を考慮したPR-CIS(Ds)による4.20 eVは,タンパク質中のTrpの励起エネルギーとして実験的に知られている3.9∼4.0 eV [[27]]との対応はまずまずである.

Figure 3.

 PR-CIS(Ds) excitation energies of Trp in Trp-Cage.

2次グリーン関数(GF2)によるイオン化エネルギー [28]の算定もCIS/CIS(D)に合わせて移植された.pGW2 [29]のようなスピン成分スケーリングも可能であり,素のGF2の過小評価傾向の是正に有効である.GF2による軌道エネルギーシフトをCIS(D)のU2項の計算に用いる [25, 26]こともでき,上述のTrpの励起エネルギー算定値はpGW2のシフトでは4.06 eVにまで改善される.

6 Ver.2 Rev. 8のリリース

既述の高速化や機能拡充をまとめ,Ver. 2 Rev. 8としてリリースし,HPCI拠点でライブラリ公開する予定である.ただ,Ver. 2 Rev. 4 [9]に比べると機能が大幅に増えるため,現時点での作業版のRev. 6を元に最終チェック版のRev. 7を作成した後,テストや例題の準備などに時間をかけたいと考えている.このため,当初目論んでいた2022年度内でのパッケージングの完了は難しく,2023年6月頃になりそうである.

7 まとめと今後

本稿では,ABINIT-MPのVer. 2 Rev. 4のリリース後の改良についてまとめて紹介した.高速化と大規模系の対応については「道半ば」であり,「富岳」を前提に数万フラグメントのFMO-MP2計算の実現に向けて作業をさらに進めていく必要がある.その中では,FMO計算の処理に本質的な配列群を分散して保持する改造も想定している.

GPUの利用についても記しておきたい.ポスト「富岳」に向けた検討グループの活動が2022年夏から公式に始まっているが,その中では「京」や「富岳」と異なり,GPU等の加速ユニットの搭載が議論されている.分子軌道計算でのGPU利用は日本では文献 [30]が早期であるが,米国ではTeraChem/PetaChem社 [31]が先行している.また,GAMESS-USのグループがFMO計算のGPU対応を進めつつある [32].こうしたことから,私たちABINIT-MP開発グループもOpenACC [33]をベースとする積分生成の高速化の検討を始めたところである.

謝辞

A64FXでの高速化と大規模化対応は,JHPCN課題jh210036-NAH/jh220010:「FMOプログラムABINIT-MPの高速化と超大規模系への対応」の活動を通じて名古屋大学の「不老」 Type Iを主たるプラットフォームに進めてきましたが,富士通SS研の「A64FXシステムアプリ性能検討ワーキンググループ」の活動とも連動しました.また,「富岳」での感染症関連タンパク質の液滴モデルのFMO計算はHPCI課題hp210026/hp220025:「新規感染症のための計算科学的解析環境の整備」の枠で行いました.SX-AT向けのベクトル化は,NEC (株)との共同研究に拠ります.なお,資金面では立教SFRの支援を受けました.

参考文献
 
© 2022 日本コンピュータ化学会
feedback
Top