6.7.4. LAMMPS
LAMMPSの概要#
本サービスにプリインストールされたLAMMPSの利用に関する情報を記述します。下記のジョブスクリプト例では、入力データとしてLAMMPSの公式サイトで公開されているin.lj.txtを使用しています。
入力ファイルの配備手順を以下に示します。インターネットアクセスが必要となるためログインノードで実行してください。
$ wget https://www.lammps.org/inputs/in.lj.txt $ cp -rp in.lj.txt (JOBを実行するディレクトリ)/
Armシステムのジョブスクリプト例#
-
環境設定
計算ノードで対話的に実行する場合、
module
コマンドとspack
コマンドで必要な環境設定を行ないます。
$ module load development-studio/1.2.35 $ . /fefs1/app/spack/spack-0.18.0/share/spack/setup-env.sh $ spack load --only package lammps /cdjxodx
-
バッチジョブのスクリプト記述例
2MPIプロセス×2スレッド並列のバッチジョブのスクリプト例を以下に示します。
#!/bin/sh #PJM -L "node=1" #PJM -L "rscunit=rscunit_ft01" #PJM -L "rscgrp=arm-small" #PJM -L "elapse=1:00:00" #PJM --mpi "proc=2" #PJM -j # Setting of Compiler module load development-studio/1.2.35 # Setting of SPACK . /fefs1/app/spack/spack-0.18.0/share/spack/setup-env.sh spack load --only package lammps /cdjxodx # Thread settings export OMP_NUM_THREADS=2 # RUN LAMMPS mpiexec -n 2 -ofout lmp.out lmp -in in.lj.txt
x86システムのジョブスクリプト例#
-
環境設定
計算ノードで対話的に実行する場合、
spack
コマンドで必要な環境設定を行ないます。
$ . /fefs1/app/spack/spack-0.18.0/share/spack/setup-env.sh $ spack load lammps /b6hoox6
-
バッチジョブのスクリプト記述例
8MPIプロセス×4スレッド並列のバッチジョブのスクリプト例を以下に示します。
#!/bin/sh #PJM -L "node=1" #PJM -L "rscunit=rscunit_pg01" #PJM -L "rscgrp=x86-small" #PJM -L "elapse=1:00:00" #PJM -j # Setting of SPACK . /fefs1/app/spack/spack-0.18.0/share/spack/setup-env.sh spack load lammps /b6hoox6 # MPI settings export I_MPI_HYDRA_HOST_FILE=${PJM_O_NODEINF} export I_MPI_PERHOST=8 export I_MPI_HYDRA_BOOTSTRAP=rsh export I_MPI_HYDRA_BOOTSTRAP_EXEC=/bin/pjrsh export I_MPI_PIN_DOMAIN=omp export I_MPI_PIN_CELL=core # Thread settings export OMP_NUM_THREADS=4 export KMP_STACKSIZE=8m export KMP_AFFINITY="compact" # RUN LAMMPS mpiexec.hydra -n 8 lmp -in in.lj.txt > lmp.out
GPUシステムのジョブスクリプト例#
-
環境設定
計算ノードで対話的に実行する場合、
spack
コマンドで必要な環境設定を行ないます。
$ . /fefs1/app/spack/spack-0.18.0/share/spack/setup-env.sh $ spack load lammps /z6opytw
-
バッチジョブのスクリプト記述例
2MPIプロセス×2スレッド並列のバッチジョブのスクリプト例を以下に示します。
#!/bin/sh #PJM -L "gpu=8" #使用するGPU数 #PJM -L "rscunit=rscunit_pg02" #PJM -L "rscgrp=gpu-large" #PJM -L "elapse=1:00:00" #PJM -j # Setting of SPACK . /fefs1/app/spack/spack-0.18.0/share/spack/setup-env.sh spack load lammps /z6opytw # MPI settings export I_MPI_HYDRA_HOST_FILE=${PJM_O_NODEINF} export I_MPI_PERHOST=2 export I_MPI_HYDRA_BOOTSTRAP=rsh export I_MPI_HYDRA_BOOTSTRAP_EXEC=/bin/pjrsh export I_MPI_PIN_DOMAIN=omp export I_MPI_PIN_CELL=core # Thread settings export OMP_NUM_THREADS=2 export KMP_STACKSIZE=8m export KMP_AFFINITY="compact" # RUN LAMMPS mpiexec.hydra -n 2 lmp -in in.lj.txt -sf gpu -pk gpu 1 > lmp.out