Linux用LAMMPSのインストール

Linux サーバー版 LAMMPS インストールマニュアル
2015/05/08
本マニュアルの目的
本マニュアルでは、単独ユーザが独占的に Linux サーバー(CentOS 6.6)を使用して LAMMPS ジョブ
を並列実行するための環境構築方法と Winmostar のリモートジョブ機能によってサーバーと連携させる計
算手順を示しています。つまり複数ユーザが共同使用する計算サーバー等は対象外です。そのため計算環
境は全てユーザのホームディレクトリ配下で行う構築することを想定しています。また単独ノードでの複
数コアによる並列計算のみを想定しており、複数ノードにまたがる並列計算や GPU による計算は対象とし
ておりません。共用サーバー上での環境構築および複数ノードをまたぐ mpi 並列実行の環境構築、GPU を
用いた環境構築などにつきましては別途お問い合わせください。
1
なお、本マニュアルでは Linux サーバー上でジョブスケジューラ TORQUE が使用できる状態であること
を仮定しています。また以下の命名としています。
サーバーホスト名:remote_server
ユーザ名:winmostar_user
I.
Linux サーバー上への LAMMPS の動作環境設定方法
①
LAMMPS のサイト内の[Downloads]サイト http://lammps.sandia.gov/download.html にブラウ
ザ(IEなど)を用いてアクセスし lammps-stable.tar.gz をダウンロードする。2
①
②
る
2
http://www.adaptivecomputing.com/products/open-source/torque/を参照。管理者権限で yum 等を用いて導入する。
あるいは、X-ability のサイト内 http://winmostar.com/jp/gmx4wm_jp.html(4.5. Torque)参照。
2 本手順は、LAMMPS のバージョン“10 Feb 2015”に基づいて記述されている。それ以外のバージョンについては手
順が異なることがある。
1
②
lammps-stable.tar.gz を ftp などで linux サーバーに転送する。
③
linux サーバーにログインし環境を確認する。
make, 及び GNU compiler (4.7 以降)が使用できる環境でなくてはならない。以下のようなコマ
ンドで確認する。
$ make --version
$ gcc --version
環境が無いあるいはバージョンが古い場合は yum などを用いて導入、最新化を行う。
④
圧縮ファイルを解凍する。
$ tar xzvf lammps-stable.tar.gz
⑤
make を用いてインストール環境を構築する。
$ cd lammps-XXYYZZ
XX:10, YYY:Feb, ZZ:15 など
$ make serial
II. MPICH の入手とインストール(LAMMPS の並列実行を行わない場合は、必要無い)3
①
MPICH サイトにアクセスする。
http://www.mpich.org/downloads/
②
mpich-3.1.4 をダウンロードする。
⑥
保存した mpich-3.1.4.tar.gz を ftp などで linux サーバーに転送する。
⑦
圧縮ファイルを解凍する。
$ tar xzvf mpich-3.1.4.tar.gz
③
以下の手順に従って MPICH 環境のセットアップを行う。詳しくは Installers’Guide
(http://www.mpich.org/static/downloads/3.1.4/mpich-3.1.4-installguide.pdf)参照のこと。
$ mkdir /home/winmostar_user/mpich-install
$ mkdir /home/winmostar_user/tmp/
$ mkdir /home/winmostar_user/tmp/mpich-3.1.4
$ cd /home/winmostar_user/tmp/mpich-3.1.4
$ /home/winmostar_user/mpich-3.1.4/configure prefix=/home/winmostar_user/mpich-install
$ make
$ make install
④
/home/winmostar_user/.bashrc に次の一行を追加する。
export PATH=/home/winmostar_user/mpich-install/bin: $HOME
⑤
LAMMPS の並列インストール環境を構築する。
$ cd lammps-XXYYZZ
XX:10, YYY:Feb, ZZ:15 など
$ make mpi
3
MPICH も yum を利用してインストールした方が簡便な場合がある。
⑥
動作チェックを行う4
$ cd /home/winmostar_user/lammps-XXYYZZ/src
$ cp lmp_mpi ../bench
$ cd ../bench
$ mpirun -np 4 lmp_mpi < in.lj
>& log.txt
log.txt をテキストエディターで開く。
:
:
:
LAMMPS (10 Feb 2015)
Lattice spacing in x,y,z = 1.6796 1.6796 1.6796
Created orthogonal box = (0 0 0) to (33.5919 33.5919 33.5919)
1 by 2 by 2 MPI processor grid
Created 32000 atoms
Neighbor list info ...
1 neighbor list requests
update every 20 steps, delay 0 steps, check no
master list distance cutoff = 2.8
Setting up run ...
Memory usage per processor = 4.09506 Mbytes
Step Temp E_pair E_mol TotEng Press
0
1.44
-6.7733681
0
-4.6134356
100
0.7574531 -5.7585055
0
-4.6223613
Loop time of 0.547754 on 4 procs for 100 steps with 32000 atoms
-5.0197073
0.20726105
Pair time (%) = 0.453549 (82.8016)
Neigh time (%) = 0.0636131 (11.6134)
Comm time (%) = 0.020027 (3.65621)
Outpt time (%) = 5.14984e-05 (0.00940175)
Other time (%) = 0.0105135 (1.91938)
Nlocal:
8000 ave 8037 max 7964 min
Histogram: 2 0 0 0 0 0 0 0 1 1
Nghost:
9007.5 ave 9050 max 8968 min
Histogram: 1 1 0 0 0 0 0 1 0 1
Neighs:
300708 ave 305113 max 297203 min
Histogram: 1 0 0 1 1 0 0 0 0 1
Total # of neighbors = 1202833
Ave neighs/atom = 37.5885
Neighbor list builds = 5
Dangerous builds = 0
上記のとおりのメッセージであれば正常にコンパイルとリンクが正しく行われている。
III. Winmostar から LAMMPS をリモートジョブ実行する方法
4
①
Winmostar を立ち上げる
②
Winmostar のメニューから [計算2]->[リモートジョブ投入]を選択する。
ここでは, 1 ノード内での 4 コア並列実行を想定している。
③
「リモートジョブ投入ウインドウ」に実行に必要なパラメータを設定する。
(1)
Server [SET]をクリックし[Rename]をクリックする。
(2)
Linux サーバマシンの Hostname(IP アドレス),
を設定する。
LoginID,
Passwd(パスワード)
(3)
Queue として PBS を選択する。
(4)
[Program] として[lammps]を選択する。
(5)
qsub のコマンドを Method に設定する。
-q L0 -l nodes=1:ppn=4
※
4 core で実行の場合、` ppn=4 `とする。
④
[sftp]をクリックしサーバーとの正常連携を確認する。
⑤
[stat-a] クリックしジョブの状況確認を行う。
⑥
[sendsub]をクリックしジョブを投入する。
⑦
再び[stat-a] クリックしジョブ実行状況を確認する。
⑧
[ls]をクリックし適切なファイルが出力されジョブの正常終了を確認後、[get]をクリックしファ
イルを Winmostar に取り込む。
以上