1.LAMMPS簡介
2.安裝環境需求
1、硬件環境:X86架構服務器 2、操作系統環境:Redhat,Centos,SUSE,Ubuntu等常用linux系統 3、Intel開發套件版本:parallel_studio_xe_2019_update5 4、安裝用戶:root用戶,安裝到/opt/software下 5、本次測試系統:CentOS7.6x64 |
3.軟件介質
1、 介質文件lammps-stable.tar.gz 2、 軟件版本lammps-3Mar20 |
4.軟件安裝步驟
4.1編譯環境設置
我們使用intel編譯器編譯lammps,使用intel MPI運行lammps intel編譯器的安裝和設置步驟詳見文章《Intel Parallel Studio XE 2019安裝設置》一文 運行如下命令設置好編譯環境 source /opt/intel/intel2019u5.sh |
4.2下載並解壓軟件
下載軟件 wget https://lammps.sandia.gov/tars/lammps-stable.tar.gz 復制軟件到/opt/software目錄 cp lammps-stable.tar.gz /opt/software 解壓 tar xvf lammps-stable.tar.gz 得到lammps的目錄 /opt/software/lammps-3Mar20/ |
4.3安裝編譯lammps
進入lammps安裝目錄 cd /opt/software/lammps-3Mar20/src 查看所有package make package-status 選擇需要安裝的package 比如 make yes-peri make yes-manybody 編譯 make clean-all make -j 10 intel_cpu_intelmpi 編譯成功后,在當前目錄生成可執行文件lmp_intel_cpu_intelmpi 如果選擇安裝所有package make yes-all 注意:有些軟件包由於依賴關系,無法安裝,可以選擇去掉,如下是我測試時,選擇yes-all后需要去掉的包 make no-USER-QUIP make no-user-h5md make no-user-plumed make no-mscg make no-message make no-latte make no-kim make no-gpu make no-user-smd make no-python make no-user-vtk make no-USER-ADIOS make no-USER-SCAFACOS make no-voronoi make no-USER-AWPMD make no-USER-ATC |
5.lammps並行測試
運行軟件時需要用普通用戶,如下操作用jingyang用戶測試 1、 設置算例 從examples里復制一個lammps算例文件測試到用戶家目錄里並改成lammps_test目錄 cp -r /opt/software/lammps-3Mar20/examples/shear ~/lammps_test 設置好intel環境變量 source /opt/intel/intel2019u5.sh 進入測試目錄 cd ~/lammps_test 2、單節點內並行測試 mpirun -np 20 / opt/software /lammps-3Mar20/src/lmp_intel_cpu_intelmpi < in.shear 3、多節點並行測試(前提配置好集群環境) 編輯host文件,內容如下 node01 node02 運行 mpirun -machinefile host -np 40 /home/inspur/lammps-3Mar20/src/lmp_intel_cpu_intelmpi < in.shear |
6.lammps軟件PBS腳本例子
#PBS -N test-lammps #PBS -q batch #PBS -l nodes=2:ppn=20 #PBS -S /bin/bash #PBS -V cd $PBS_O_WORKDIR source /opt/intel/intel2019u5.sh INPUT_FILE=PdP.in NP=`cat $PBS_NODEFILE | wc -l` NN=`cat $PBS_NODEFILE | sort | uniq | tee /tmp/nodes.$$ | wc -l` cat $PBS_NODEFILE > /tmp/nodefile.$$ mpirun -machinefile /tmp/nodefile.$$ -n $NP /opt/software/lammps-3Mar20/src/lmp_intel_cpu_intelmpi < ${INPUT_FILE} >out.log rm -rf /tmp/nodefile.$$ rm -rf /tmp/nodes.$$