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.$$