lammps入門2 - hpci-office.jp · –...

29
LAMMPS入門2 高度情報科学技術研究機構(RIST吉澤香奈子 1

Upload: others

Post on 05-Apr-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPS入門2

高度情報科学技術研究機構(RIST) 吉澤香奈子

1

Page 2: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

Outline • Introduction

− 古典MDの代表的なアプリ(オープンソース) − LAMMPS, OCTA, MODYLAS, その他

• LAMMPSについて − LAMMPSを使い始めるには − LAMMPSのGUIアプリ − LAMMPSの実行

• LAMMPSのexamples • opt パッケージの利用

− LAMMPSの可視化

• MateriApps Live!のご紹介

2

Page 3: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

INTRODUCTION

3

Page 4: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

Introduction

• LAMMPS http://lammps.sandia.gov/

• OCTA http://www.octa.jp/index_jp.html

• MODYLAS http://www.modylas.org/

• その他 – Gromacs、NAMD、DL-POLY : 海外のアプリ – GENESIS : 国産のアプリ

4

古典MDの代表的なアプリ(オープンソース)

Page 5: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

材料系分子シミュレーションの現象スケール

量子化学 分子軌道法、密度汎関数法

NTChem, ABINIT-MP, PHASE, xTAPP, etc.

分子動力学

LAMMPS MODYLAS

粗視化分子動力学

OCTA

nm μm mm

ps

ns

fs

μs

時間スケール (sec)

空間スケール (m)

(注)厳密なものではない あくまで目安

LAMMPS • 様々な計算スケールの手法が入っている

(粒子系で高速多重極展開FMM法以外は大抵入っている) • 金属系の経験ポテンシャル類にも強い

ms

5

Page 6: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSについて

6

Page 7: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSを使い始めるには • 個人のPCで試す(Windows, Mac, Linux)

– 個人で設定、インストールの必要がある

– GUI支援ツール(Windows)を用いる

– MateriApps Live! http://cmsi.github.io/MateriAppsLive/ のようなツールを用いるとインストールなしで試せる(後述)

• 「京」およびHPCIでの利用 大規模計算 – 課題申請、成果報告の必要がある – インストールの必要がある – 機関によってはプリインストールされている

名古屋大学 情報基盤センター、大阪大学 サイバーメディアセンター

どのプラットフォームでもLAMMPSのコンパイルには比較的時間がかからない

インストール方法などの詳細は、HPCIポータルサイトの http://www.hpci-office.jp/materials/LAMMPS_introduction_160219_yoshizawa.pdf 7

Page 8: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSのGUIアプリ(1) • J-OCTA https://cae.jsol.co.jp/product/material/jocta/

– 2005年 JSOL(日本総研)が開発 OCTAの商用版 ※ Student Edition(機能制限付きの無償版)がある

– LAMMPSをマルチスケールシミュレーション統合環境に拡張でき、多機能なプリポストが利用可能

COGNACのデータに基づいて、LAMMPSデータと相互に変換

LAMMPSの入力ファイルが自動生成され、手動修正も可能

結果ファイルは自動的にCOGNACデータに変換される

8

Page 9: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSのGUIアプリ(2) • Winmostar https://winmostar.com/

– 株式会社クロスアビリティが開発・販売 – 企業ユースで15万円より(トライアル版あり) – サポート&講習会(東京、関西で毎週開催) – 平均20ダウンロード/日 – 国内外にシングルライセンス460ユーザ、機関ライセンス36契約

(2016年9月13日時点)

9

Page 10: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSのGUIアプリ(3) • その他のツール

Pre/Post Processing Tools for use with LAMMPS(紹介サイト) http://lammps.sandia.gov/prepost.html

• 可視化ツール(後述) – VMD http://www.ks.uiuc.edu/Research/vmd – OVITO http://www.ovito.org

10

OVITO

Page 11: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSの実行

• LAMMPSパッケージにある lammps-30Jul16/examples/melt の実行 入力ファイル in.melt: 4,000原子、NVEアンサンブル、250ステップ

• 計算規模を変えて実行 – 原子数:4,000、 256,000、 204,8000

11

Page 12: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSのexamples

12

http://lammps.sandia.gov/doc/Section_example.html

7. Example problems

accelerate run with various acceleration options (OpenMP, GPU, Phi)

balance dynamic load balancing, 2d system

body body particles, 2d system

colloid big colloid particles in a small particle solvent, 2d system

comb models using the COMB potential

coreshell core/shell model using CORESHELL package

crack crack propagation in a 2d solid

deposit deposit atoms and molecules on a surface

dipole point dipolar particles, 2d system

dreiding methanol via Dreiding FF

eim NaCl using the EIM potential

ellipse ellipsoidal particles in spherical solvent, 2d system

・・・

Page 13: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPS の examples/melt(1)

13

melt: FCC格子状に並んだLJ粒子が溶けて拡散

# 3d Lennard-Jones melt units lj atom_style atomic lattice fcc 0.8442 region box block 0 10 0 10 0 10 create_box 1 box create_atoms 1 box mass 1 1.0 velocity all create 3.0 87287 pair_style lj/cut 2.5 pair_coeff 1 1 1.0 1.0 2.5 neighbor 0.3 bin neigh_modify every 20 delay 0 check no fix 1 all nve

入力ファイル: in.melt

力場パラメータの設定

速度の設定

Lennard-Jones(LJ) 古典粒子

格子定数: FCC 0.8442 シミュレーションボックスの指定

NVEアンサンブル

Page 14: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

14

#dump id all atom 50 dump.melt #dump 2 all image 25 image.*.jpg type type & # axes yes 0.8 0.02 view 60 -30 #dump_modify 2 pad 3 #dump 3 all movie 25 movie.mpg type type & # axes yes 0.8 0.02 view 60 -30 #dump_modify 3 pad 3 thermo 50 run 250

入力ファイル: in.melt (続き)

# は、コメントアウト dump:出力形式の指定

計算実行(step)数

LAMMPS の examples/melt(2)

Page 15: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

15

LAMMPS の examples/melt(3) 入力ファイル(in.melt)における原子数の設定

• 原子数:4,000 region box block 0 10 0 10 0 10

• 原子数:256,000 region box block 0 40 0 40 0 40

• 原子数:204,8000 region box block 0 80 0 80 0 80

Page 16: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPS の examples/melt:実行結果(1)

16

Step Temp E_pair E_mol TotEng Press 0 3 -6.7733681 0 -2.2744931 -3.7033504 50 1.6758903 -4.7955425 0 -2.2823355 5.670064 100 1.6458363 -4.7492704 0 -2.2811332 5.8691042 150 1.6324555 -4.7286791 0 -2.280608 5.9589514 200 1.6630725 -4.7750988 0 -2.2811136 5.7364886 250 1.6275257 -4.7224992 0 -2.281821 5.9567365

LAMMPSの入力ファイルにおいて

thermo_style custom step temp epair emol etotal press 出力する値の設定

出力結果(物理量)

Page 17: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPS の examples/melt:実行結果(2)

17

MPI task timing breakdown: Section | min time | avg time | max time |%varavg| %total --------------------------------------------------------------- Pair | 0.51688 | 0.51688 | 0.51688 | 0.0 | 84.69 Neigh | 0.067366 | 0.067366 | 0.067366 | 0.0 | 11.04 Comm | 0.011268 | 0.011268 | 0.011268 | 0.0 | 1.85 Output | 8.7261e-05 | 8.7261e-05 | 8.7261e-05 | 0.0 | 0.01 Modify | 0.011968 | 0.011968 | 0.011968 | 0.0 | 1.96 Other | | 0.002732 | | | 0.45 Nlocal: 4000 ave 4000 max 4000 min Histogram: 1 0 0 0 0 0 0 0 0 0 Nghost: 5499 ave 5499 max 5499 min Histogram: 1 0 0 0 0 0 0 0 0 0 Neighs: 151513 ave 151513 max 151513 min Histogram: 1 0 0 0 0 0 0 0 0 0 Total # of neighbors = 151513 Ave neighs/atom = 37.8783 Neighbor list builds = 12 Dangerous builds not checked Total wall time: 0:00:00

LAMMPS内のタイマーによって実行時間がわかる

全実行時間

Page 18: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPS の examples/melt:実行結果(3)

18

実行時間(時:分:秒)

FX10

プロセス数 1 4 16 256 576

4,000原子1,000ステップ 0:00:02 0:00:01 0:00:01 0:00:05 4,000原子10,000ステップ 0:00:29 0:00:11 0:00:12 0:00:03 256,000原子1,000ステップ 0:03:06 0:01:13 0:01:11 0:00:04 0:00:02 256,000原子10,000ステップ 0:31:15 0:12:48 0:11:47 0:00:44 0:00:21 2,048,000原子1,000ステップ 0:27:04 0:10:06 0:08:56 0:00:36 0:00:15

2,048,000原子10,000ステップ 1:46:38 1:28:35 0:05:55 0:02:30

• 計算規模が大きくなる HPCの利用へ • プロセス数当たりの粒子数減少に伴う実行時間の減少 計算規模(原子数など)に合わせた、計算機の選択が必要

※すべてフラットMPIによる実行

iMac:2.8 GHz Intel Core i7

実行時間(時:分:秒)

Page 19: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

プロセス数の見積もりFX10 examples/melt フラットMPI(原子数:4,000、256,000、2,048,000)

19

4,000原子:〜16プロセス 256,000原子:〜600プロセス 2,048,000原子:600プロセス以上

性能測定はRISTの高度化支援へ

Page 20: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSの「京」での性能

図:未架橋フェノールの並列化効率計算結果

LAMMPSによる架橋フェノール樹脂の計算 フラットMPI(原子数:26,000、208,000、1,664,000、13,312,000) 温度 300K、1 atm の条件でNPTアンサンブルを用いた 10,000 stepの計算 (1ステップあたりの時間刻みは 1 fs) ※ 原子数 13,312,000 は、1,000ノード(8,000 コア)を使用

20

Page 21: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

LAMMPSの高速化関連パッケージ

21

5.3. Packages with optimized styles

http://lammps.sandia.gov/doc/Section_example.html

GPU Package NVIDIA GPU(OpenCLサポートと同様)

USER-INTEL Package Intel CPU と Intel Xeon Phi

KOKKOS Package Nvidia GPU, Intel Xeon Phi, OpenMPスレッド並列

USER-OMP Package OpenMPスレッド並列 と 一般的なCPU最適化

OPT Package 一般的なCPU最適化 (-sf opt)

FX10

256,000 atoms with -sf opt

2,048,000 atoms with -sf opt

OPT Packageを使うことにより、実行時間が短縮される。

Page 22: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

22

入力ファイル(in.melt)において # 3d Lennard-Jones melt

units lj

atom_style atomic

lattice fcc 0.8442

region box block 0 10 0 10 0 10

create_box 1 box

create_atoms 1 box

mass 1 1.0

velocity all create 3.0 87287

pair_style lj/cut 2.5

pair_coeff 1 1 1.0 1.0 2.5

neighbor 0.3 bin

neigh_modify every 20 delay 0 check no

fix 1 all nve

dump id all atom 50 dump.melt

#dump 2 all image 25 image.*.jpg type type &

# axes yes 0.8 0.02 view 60 -30

#dump_modify 2 pad 3

#dump 3 all movie 25 movie.mpg type type &

# axes yes 0.8 0.02 view 60 -30

#dump_modify 3 pad 3

thermo 50

run 250

LAMMPSの可視化:VMDで可視化する

# を取る

この入力ファイルを実行すると、 dump.melt というファイルを出力する。

Page 23: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

VMDで可視化する(2) • VMDの起動 • dump.melt を開く

23

Page 24: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

VMDで可視化する(3) • ファイルタイプの選択 「LAMMPS Trajectory」

24

Page 25: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

VMDで可視化する(4) • ディスプレイの起動(Linesの表示)

25

Page 26: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

VMDで可視化する(5) • 表示形式の調整

26

③ 0.2くらいに調整

Page 27: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

VMDで可視化する(6) • ディスプレイ(VDWの表示)

27

Page 28: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

VMDで可視化する(7) • MDスタート

28

ここをクリック

Page 29: LAMMPS入門2 - hpci-office.jp · – lammpsをマルチスケールシミュレーション統合環境に拡張でき、 多機能なプリポストが利用可能 cognacのデータに基づいて、lammpsデータと相互に変換

MateriApps LIVE! のご紹介 USBメモリから直接ブートできる Linux システム (Debian Live Linux)

• Windows、Mac などで利用可

• インストール作業なしで物質科学アプリを実行できる

バージョン1.11公開 (2016年9月5日)

MateriAppsで紹介している公開アプリ・ツールを収録

• 2016年9月現在:ABINIT, AkaiKKR, ALPS, CP2K, DSQSS, ERmod,

feram, Gromacs, HPhi, OpenMX, Quantum ESPRESSO, SMASH,

xTAPP, LAMMPS, VMD

MateriApps LIVE! サイト (http://cmsi.github.io/MateriAppsLive/)

からダウンロード可能

USB で reboot しなくても VirtualBox + ova ファイル で使用可能 https://github.com/cmsi/MateriAppsLive/wiki/MateriAppsLive-ova

29