Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
第六回材料系ワークショップ:
汎用 MD 計算ソフト MODYLAS の開発
および最近の応用事例
名古屋大学工学研究科附属計算科学連携教育研究センター
特任准教授安藤 嘉倫
2018/10/12(金)10:00-17:30秋葉原UDX4FNEXT-1
MODYLAS 開発の履歴
「NAREGI」において並列化チューニングを開始Mode
Modylas
MODYLAS
「次世代ナノ統合シミュレーションソフトウェアの研究開発」において京コンピュータに最適化した並列化チューニングを実施
www.modylas.orgにおいてバイナリ公開(2013年9月)ソース公開(2014年4月)
CMSIMateriAppsに登録
CMSI配信講義/AICS配信講義 :計算科学技術特論A(2013,2015,2017)[吉井]計算科学技術特論B(2014,2016,2018)[安藤]計算科学技術特論C(2015)[吉井]教科書 :下司雅章編,計算科学のためのHPC技術,vol1&2,大阪大学出版会(2017)[吉井・安藤 部分執筆]
論文公刊 Y.Andohetal.,J.Chem.TheoryComp.,9,3201-3209(2013).
第12回CMSI神戸ハンズオン:MODYLAS講習会,FOCUS(2013)第21回CMSI神戸ハンズオン:MODYLAS講習会,CMSI神戸拠点 (2015)
Webページに使用方法についての説明資料あり
Webページに並列化技術についての説明資料あり
ポスト「京」コンピュータ上での大規模・長時間MD計算実現のための最適化中
ダウンロード方法は付録参照
計算の対象としている物質
小児マヒウィルス(ポリオウイルス)
細胞膜
その他・クラスレートハイドレート ・ミセル ・高分子粘着剤・対衝撃性高分子材料
高分子ガス分離膜
ウイルスレセプター
界面活性剤ミセルのエマルジョン
高分子ガラスの一軸延伸
実際の研究に使われた例(1)
クラスレートハイドレートの融解過程 (岡山大)T.Yagasaki,M.Matsumoto,Y.Andoh,S.Okazaki,H.Tanaka,J.Phys.Chem.B,118,1900(2014).;118,11797(2014).
650万原子,200ns
・日本化薬 J.Phys.Chem.B,113,15181(2009).
・大日本住友製薬PLoSONE,11,1(2016).
・日東電工
企業との共同研究
MicelleofPEG-PBLG-Acblockcopolymers
15万原子,7ns
36万原子,120ns
薬剤-膜タンパク質結合自由エネルギー
高分子粘着材
研究協力:中川(蛋白研)野本(微化研)田中(名市大医)石川(名大医)
ポリオウィルスカプシドの安定性安藤嘉倫,岡崎進,情報処理学会会誌「情報処理」8月号.
J.Chem.Phys.141,165101(2014).
ImPACTプロジェクト:超薄膜化・強靭化「しなやかタフポリマーの実現」
https://www.jst.go.jp/impact/shinayaka/index.html
実際の研究に使われた例(2)
以下、キーワードのみ(当日別資料で説明)
・高分子ガラス材料の破壊シミュレーション・化学結合の切断を扱うための新しいポテンシャル関数 (PE,PMMA,PC,PS)・応力-ひずみ曲線
関連学会発表(2018年度):藤本 和士, 湯 之也,RajdeepPayal,篠田 渉,岡崎 進,第12回分子科学討論会,1E16,福岡(2018).藤本 和士,高分子計算機科学研究会,東工大,10/15(2018).藤本 和士,湯 之也,RajdeepPayal,篠田 渉,岡崎 進,第32回分子シミュレーション討論会,303S,筑波(2018).ほか
動作確認済みプラットフォーム
力場 CHARMMwithCMAP,TIP3P[OPLS,AMBER,TIP4P]
アンサンブルNVE,NVT(能勢-Hooverチェイン),等方的NPT(能勢-アンダーソン)[,異方的NPT(能勢-パリネロ・ラーマン)]
数値積分 rRESPA
拘束動力学 SHAKE/ROLL,RATTLE/ROLL
静電相互作用 高速多重極展開法(FMM)[,particlemeshEwald(PME)法]
[]付き項目は公開版では順次対応.
動作確認済みコンパイラー frtpx(富士通),ifort(インテル),pgf90(PGI)
並列方式 MPI/OpenMP/SIMDの3層ハイブリッド並列
通信方式 「京」の3DトーラスネットワークTofuに最適化
インストール済スパコン京コンピューター/opt/spire/MODYLAS/ *実行バイナリのみOakforest(東大),FX100(名大),ITO(九大)
連携ソフトREM(レプリカ交換法),FMO(フラグメント分子軌道法)ERmod(エネルギー表示溶液理論)
「京」での性能測定
サイズ/nm3
原子数 ノード数京†
ノード数ポスト京**
483 10,000,000 65,536 <2,048
243 1,250,000 8,192 <256
123 150,000 1,024 <32
63 20,000 128 <4
5ms/step*に必要な「京」ノード数目安
*35ns/day(Δt=2fs)†ver_1.0.4での概算値**開発目標値
Pairwiseadditive
FMM
Intra
Comm.
Fig.MeasuredpartialcalculationtimesandcommunicationtimeperMDstep(Δt)[1]
Fig.StrongscalingtestwithK-computer[1].
・原子数 107 PYPタンパク質512個,水 3005952個,イオン2560個・NVEアンサンブル(距離拘束条件含む)・LJカットオフ12Å・FMM(6階層,展開次数4)・multi-timestep
5ms/step
65,53664
[1]Y.Andohetal.,J.Chem.TheoryComp.,9,3201-3209(2013). 京 0.128TFLOPS/nodeポスト京§ >2.7TFLOPS/node
§http://www.fujitsu.com/jp/Images/20180821hotchips30.pdf
MODYLAS I/Oの構成
MODYLAS 座標情報ファイル aaa.mdxyz, or aaa.mdxyz.bin
力場情報ファイル aaa.mdff, or aaa.mdff.bin
MODYLAS用 計算条件ファイル aaa.mddef
力学,熱力学量モニターファイル aaa.mdmntr
リスタート用ファイル aaa.restart.bin, or aaa.restart.asc
解析用ファイル aaa.dcd, aaa.mdtrj.bin
計算速度ファイル aaa.mdrun
実行情報 (標準出力)
aaa: セッション名
全てのI/Oファイルで共通
.bin はバイナリ :可視化の対象ファイル
I/O構成
www.modylas.org->Documentation->ManualおよびTutorialslideを参照
分子座標 .pdb
CHARMM トポロジーファイル
CHARMM パラメーターファイル
Nano-Ignition
座標情報ファイル aaa.mdxyz
力場情報ファイル aaa.mdff
MODYLAS用 計算条件ファイル aaa.mddef
可能な操作 ・入力された分子の3D表示 ・力場パラメータの割り当て ・距離拘束条件の指定 ・基本セルサイズの設定 ・力場パラメータの変更 ・水素原子付加 ・水溶媒付加 ・分子の削除, 挿入, 置換 ・分子の複製, 移動 ・化学結合の追加 など (マニュアル参照)
例) top_all22_prot.rtf
例) par_all22_prot.prm
入出力支援ソフト
・インプット作成ソフトNano-Ignitionフリーソフト(登録制)www.nano-ignition.ims.ac.jp
I/O構成
その他のインプット作成方法・VMD[2]を介してMODYLAS用インプットファイル作成できるPlug-inを用意・WinmostarTM[3]を介したインプット作成&実行
[2]Humphrey,W.etal.,J.Molec.Graphics1996,14.1,33-38.[3]https://winmostar.com/jp/index.php
・Windows版(.exe)・Linux版 ソースコード
第12回CMSI神戸ハンズオン資料,およびwww.modylas.org->Documentation->Manual,Tutorialslideを参照
Nano-Ignition で力場を設定できる分子種
以下サイトより,最新のCAHRMM力場ファイルをダウンロード:http://mackerell.umaryland.edu/CHARMM_ff_params.html
toppar_c36_jul16.tgz
top_all36_prot.rtftop_all36_na.rtftop_all36_lipid.rtftop_all36_cgenff.rtftop_all36_carb.rtftop_all35_ethers.rtftop_all22_prot.rtf
par_all36_prot.prmpar_all36_na.prmpar_all36_lipid.prmpar_all36_cgenff.prmpar_all36_carb.prmpar_all35_ethers.prmpar_all22_prot.prm
タンパク質核酸脂質CGenFF(有機小分子)糖質エーテル(CHARMM35)タンパク質(CHARMM22)
・分子座標は.pdbファイル形式で別途用意する(たとえば WinmosterTMで作成)・高分子の力場に使用される OPLS力場は non_charmm/top_opls_aa.inp,par_opls_aa.inpをベースに改変を加えることで ignition から read 可能に
トポロジーファイル パラメーターファイル
MODYLAS 入出力ファイルの書式
・タグ形式 <xxxx>......</xxxx> xxxxには所定のキーワードが入る タグの入れ子構造も可 <xxxx><yyyy>...</yyyy></xxxx>・変数名=値・「#」以降は読み込まれない(コメント扱い)
例) aaa.mddef <output> dcd=yes <trjdcd> start=0 interval=100 </trjdcd> # dcd <restart> start=0 interval=10000 </restart> # restart <monitor> start=0 interval=1 </monitor> # mdmntr </output> <integrator> dt=2.0e-15 # [sec] steps=10000 </integrator> <ensemble> ensemble=npt_a # opt/nve/nvt/npt_a </ensemble>
100ステップごと .dcd を書き出し
10000ステップごと mdxyz.bin を書き出し
1ステップごと mdmntr を書き出し
数値積分の時間刻みΔt=2fs
ステップ数 10000
アンサンブルは等方的 NPT (圧力P, 温度T一定)
>tar xvfz MODYLAS_1.0.4.tar.gz
解凍先のソースフォルダへ移動
>cd MODYLAS_1.0.4/source/
コンパイル環境の設定
>./configure --with-kind-fortran-compiler=FC
コンパイル
>make
./src/modylas
が生成
MODYLAS コンパイル方法
FC=(K|FX10|INTEL|PGI)
K : 京コンピューター FX10 : FX10/FX100 INTEL : インテルコンパイラー PGI : PGIコンパイラー
必要に応じて,コンパイル前に src/MakefileファイルのFC=の行に下記プリプロセッサを追記し機能拡張-DHALFDIRE 作用反作用ルーチンを有効-DONEPROC_AXIS プロセス数1,2,4に対応(標準では8以上)-DSEGSHAKE 熱力学的積分法ルーチンを有効
./configure--helpで候補を表示
MODYLAS 実行方法
インプット一式のあるフォルダへ移動
>cd Met2/
コンパイルした実行モジュールのリンク
>ln –s ../../source/src/modylas ./
並列実行
>mpirun –np 8 ./modylas calcmf_034_0 > output_034_0
./modylas セッション名 実行形式:
*実行時のスレッド数はexportOMP_NUM_THREADS=?で設定*プロセス数×スレッド数,はマシンのコア数以下とする
以下の aaaをセッション名と呼称
aaa.mddef,aaa.mdff,aaa.mdxyz
例)sample/Met2
①力学・熱力学量 (ポテンシャルエネルギー, 温度, 圧力,etc.) の時間変化
計算結果の可視化
②原子の軌跡 ri(t)
1. 生成された aaa.dcd を Windows 上で VMD により動画表示
> vmd aaa.pdb aaa.dcd
2. 用意されたコンバータープログラムにより aaa.mdtrj.bin を aaa.xyz に変換 > vmd aaa.xyz
・aaa.mdmntr は gnuplot により直接グラフ化できる ①「File」→「New Molecule ...」を選択
②「Browse」を押し可視化対象のaaa.pdb, aaa.dcd を選択
③「Load」を押す
④動画として表示される
## water_opt.mdmntr -- monitor variables output from MD calculation by modylas # # datas below are formated as: # step time Hamiltonian potential-E kinetic-E total energy temperature volume pressure box-length(x) box-length(y) box-length(z) # [sec] [J/cell] [J/cell] [J/cell] [J/cell] [K] [m3] [Pa] [m] [m] [m] # 1 1.000000000000E-15 8.634745670798E-15 8.634745670798E-15 0.000000000000E+00 8.634745670798E-15 0.000000000000E+00 1.406080000000E-25 0.000000000000E+00 5.200000000000E-09 5.200000000000E-09 5.200000000000E-09 2 2.000000000000E-15 1.449528625793E-15 1.449528625793E-15 0.000000000000E+00 1.449528625793E-15 0.000000000000E+00 1.406080000000E-25 0.000000000000E+00 5.200000000000E-09 5.200000000000E-09 5.200000000000E-09
例) ポテンシャルエネルギー最小化計算 (初期構造最適化) での aaa.mdmntr
www.modylas.org->Documentation->ManualおよびTutorialslideを参照
コンタクトの方法
名古屋大学 岡崎 進 教授 吉井 範行 特任准教授 安藤 嘉倫 特任准教授 藤本 和士 助教 山田 篤志 (現 筑波大) 小嶋 秀和 分子科学研究所 水谷 文保 技術班長 岩橋 建輔 技術職員
著作権者 開発協力者
名古屋大学情報基盤センター 片桐 孝洋 教授 荻野 正雄 准教授東京大学情報基盤センター 大島 聡史 助教理研 AICS 鈴木惣一朗 南 一生,黒田明義富士通 市川真一,小松秀美 石附 茂, 武田康宏,福島正雄金沢大学 長尾 秀実 教授 川口 一朋 助教
共同研究相談 [email protected] *高分子シミュレーションに関連する拡張機能の使用相談を含む
一般的質問 http://www.modylas.orgのForum/Generaldiscussionへ投稿
使用方法の解説 http://www.modylas.orgのDocumentationの資料,および 第12,21回CMSI神戸ハンズオン:MODYLAS講習会資料
付録
ダウンロード方法
登録後このようなメールが送られてくる. リンク先からソースコードをダウンロード
www.modylas.org
・マニュアル(PDF)・チュートリアル(PDF)のダウンロード
ユーザー登録
ダウンロードライセンス
・ユーザー登録制・再配布禁止 ・文献引用 [Y.Andohetal.,J.Chem.TheoryComp.,9,3201-3209(2013)]・ベンチマーク結果を著作権者の許可無く公開禁止・ソース変更,改良点は著作権者にフィードバックライセンス詳細は www.modylas.orgのダウンロードページに記載
参考文献
分子動力学計算
[1]岡崎進,吉井範行,コンピュータシミュレーションの基礎,化学同人(2000).[2]上田顕,分子シミュレーション–古典系から量子系手法まで-,裳華房(2003).[3] D.Frenkel,B.Smit,Understandingmolecularsimulation(2nded.),AcademicPress(2001).
物理化学,統計力学
[4]D.A.McQuarrie,J.D.Simon,物理化学(下)分子論的アプローチ,東京化学同人 (2000).[5]M.E.Tuckerman,StatisticalMechanics:TheoryandMolecularSimulation,OxfordUniv.Press(2010).
実行制限
MODYLAS_1.0.4 には, 主に並列化方法からの要請により, 以下の実行制限があります
✓MPI と OpenMP のハイブリッド並列
✓基本セル各辺の分割数 = 2k (均等分割, 3≤k≤6) 2k*3l (不均等分割)
✓分割されたサブセルの一辺長さ > 0.5*カットオフ半径
✓立方体の基本セル 直方体
・プロセス数: 2n (3≤n) 2n (1≤n) 2n*3m (1≤n, 1≤m) ・スレッド数: 制限なし
✓周期境界条件下
2.0.0
1.0.4
分子動力学計算 手法の概要
繰り返し
離散化
ri :原子座標Fi :原子に働く力mi :質量
mid 2ridt2
= Fi i =1,,N
N:原子数
ri,vi を一定ステップ数ごと出力
Hotspotは Fi の計算部分基礎方程式
Fi = −∂Φ(r N )∂ri
Φ(r N ) :相互作用ポテンシャル
Φ(r N ) = φintramolecule +φLennard-Jones +φCoulomb
O(N) O(N2)Ewald法での厳密計算(周期境界条件下)
Particle Mesh Ewald 法 FFT,全対全通信,O(NlogN)
高速多重極展開法 (FMM)多重極子展開,隣接通信,O(N)
>1,000process
~1,000process
MODYLASでは大規模系・超並列を前提にこちらをメインに開発
演算,通信ともに
分子内 分子間 短距離
分子間 長距離
vi t +Δt2
"
#$
%
&'= vi (t)+
Δt2Fi (t)mi
ri (t +Δt) = ri (t)+Δtvi t +Δt2
"
#$
%
&'
vi t +Δt( ) = vi t +Δt2
"
#$
%
&'+
Δt2Fi (t +Δt)
mi
原子間・分子間の相互作用
化学結合長伸縮
結合角伸縮
二面角回転 improper二面角振動
Utot = Kb(b− b0 )2
bonds∑ + Kθ (θ −θ0 )
2 + Kub(s− s0 )2
ub∑
angles∑
+ Kφdihedrals∑ 1+ cos(nφ −δ)[ ]+ Kψ (ψ −ψ0 )
2
impropers∑
+ εijRijrij
#
$%%
&
'((
12
− 2Rijrij
#
$%%
&
'((
6)
*
++
,
-
.
.nonbonds∑ +
qiqjrij
静電相互作用(長距離)
レナードジョーンズ相互作用(近距離)
�
Fi = −∂Utot
∂ri
しばしば結合長伸縮, 結合角伸縮などの速い運動の自由度に距離拘束条件を
導入 (SHAKE/RATTLE/ROLL法) → より大きな Δt を使用でき, 計算可能時間長さが延びる
Δt=10-16s
Δt=10-15s
Δt=10-16~10-15s
Δt=10-15s
古典近似された力場関数 (例: CHARMM)
代表的な汎用ポテンシャル
力場名称 主な開発者 MDソフトウェア タイプ
CHARMM M. Karplus,
A.D. Mackerell Jr., J. Klauda
CHARMM All-atom
GROMOS H.J.C. Berendsen,
W.F. van Gunsteren GROMACS United-atom
AMBER P.A. Kollman AMBER All/United- atom
OPLS W.L. Jorgensen -- All/United-atom
All-atom United-atom例) メチル基
-CH3
用いる力場およびAA/UAは,要求する計算精度に応じてユーザーが選ぶ
生体分子
高分子