LAMMPS和QE在PC上的的编译安装

LAMMPS和QE的编译安装

设备为32gDDR4内存,处理器intel i7-12650H,显卡RTX4060laptop。操作系统为win11下的ubuntu24.04LTS-wsl2

kokkos加速lammps的编译(RTX4060)

解压lammps源代码

1
tar -xzvf lammps-src-22Jul2025_update2.tar.gz

安装cuda12.6

注意不要用cuda13.0(新版),lammps和kokkos尚未完全适配,下面的安装命令在英伟达cuda官网上提供

1
2
3
4
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-6

依次执行指令后更新环境变量:打开/home/user(用户名)/.bashrc,在末尾插入

1
2
3
export CUDA_HOME=/usr/local/cuda
export PATH="$HOME/bin:$CUDA_HOME/bin:$PATH"
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH

重启系统或source ~/.bashrc以重新加载环境变量,
在bash终端输入nvcc -V以查看cuda版本(与nvcc编译器版本一致)

安装系统依赖

1
2
3
4
5
6
sudo apt update
sudo apt install gcc g++ cmake gfortran gdb
sudo apt install git build-essential openmpi-bin libopenmpi-dev mpi-default-dev libfftw3-dev python3 python3-pip
sudo apt install libblas-dev liblapack-dev libatlas-base-dev
sudo apt install pkg-config
sudo apt update

安装了一些基本的构建工具和科学计算环境,直接依次运行即可

使用cmake编译lammps

cmake是lammps推荐的现代化构建工具,在源代码目录下创建并进入build文件夹,在bash终端中依次运行下列指令

1
cmake -C ../cmake/presets/basic.cmake -C ../cmake/presets/kokkos-cuda.cmake ../cmake

加载basic和基于cuda的kokkos加速两个预设构建选项,这样构建的lammps能支持gpu加速和基本的分子动力学计算

1
cmake -D BUILD_MPI=yes -D PKG_ASPHERE=on -D PKG_BOCS=on -D PKG_BODY=on  -D PKG_BROWNIAN=on -D PKG_CG-SDK=on -D PKG_CLASS2=on  -D PKG_COLLOID=on -D PKG_CORESHELL=on -D PKG_DIELECTRIC=on  -D PKG_DIFFRACTION=on -D PKG_DIPOLE=on -D PKG_DPD-BASIC=on  -D PKG_DPD-MESO=on -D PKG_DPD-REACT=on -D PKG_DPD-SMOOTH=on  -D PKG_DRUDE=on -D PKG_EFF=on -D PKG_EXTRA-COMPUTE=on -D PKG_EXTRA-DUMP=on  -D PKG_EXTRA-FIX=on -D PKG_EXTRA-MOLECULE=on -D PKG_EXTRA-PAIR=on -D PKG_FEP=on  -D PKG_GRANULAR=on -D PKG_KSPACE=on -D PKG_MANIFOLD=on  -D PKG_MANYBODY=on -D PKG_MC=on -D PKG_MEAM=on -D PKG_MGPT=on  -D PKG_MISC=on -D PKG_ML-IAP=on -D PKG_ML-SNAP=on -D PKG_MOFFF=on -D PKG_MOLECULE=on  -D PKG_OPENMP=on -D PKG_OPT=on -D PKG_ORIENT=on -D PKG_PERI=on -D PKG_PHONON=on -D PKG_PLUGIN=on -D PKG_PTM=on  -D PKG_QEQ=on -D PKG_QTB=on -D PKG_REACTION=on  -D PKG_REAXFF=on -D PKG_REPLICA=on   -D PKG_RIGID=on -D PKG_SHOCK=on -D PKG_SMTBQ=on -D PKG_SPH=on -D PKG_SPIN=on   -D PKG_SRD=on -D PKG_TALLY=on -D PKG_UEF=on -D PKG_YAFF=on  ../cmake

添加一些可能用到的包,如果确定某些包不需要,可以把on改为off,但是推荐尽可能多的安装可构建的包
(可选)
如果要安装KIM(一个势函数数据库),则必须安装 kim-property,否则lammps不能调用openkim,由于ubuntu24.04不允许直接在系统python环境安装第三方包,需要先下载一个conda环境

1
2
3
4
5
6
7
8
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
source ~/.bashrc

pip install kim-property
cmake -D DOWNLOAD_KIM=on -D PKG_KIM=on ../cmake
make -j 8
sudo cmake --install . --prefix /usr/local

使用8个核并行编译,可以根据自己的机器进行选择(可用核心的一半左右,太大容易爆内存),默认安装到/usr/local
安装后在~/.bashrc末尾增加环境变量

1
export LD_LIBRARY_PATH=/home/dmy2084/lammps-22Jul2025/build/kim_build-prefix/lib:$LD_LIBRARY_PATH

否则lammps将由于识别不到KIM而无法启动,不选择安装KIM包则不需要此操作。

不要删除build文件夹,删除后下次编译需要从头开始。其他用cmake构建的软件同理。当构建失败时,需要运行make clean命令或手动删除build文件夹重新构建。

intel oneapi加速的QE7.5的cmake编译安装

QE使用RTX4060的cuda加速收益不高,推荐使用英特尔mkl进行加速

安装intel oneapi

oneapi内置了mkl和高度优化的fortran编译器,所以比gfortran快很多

1
2
wget https://registrationcenter-download.intel.com/akdlm/IRC_NAS/0884ef13-20f3-41d3-baa2-362fc31de8eb/intel-oneapi-hpc-toolkit-2025.0.0.825_offline.sh
sudo sh ./intel-oneapi-hpc-toolkit-2025.0.0.825_offline.sh

默认有一个图形化安装程序,取消掉神经网络等无用的安装选项

为了避免干扰系统内的编译器和并行环境,intel oneapi是默认不启动的,需要在使用前通过一个脚本进行加载,编译和使用链接到intel mkl的软件前,需要运行

1
source /opt/intel/oneapi/setvars.sh

编译libxc

Libxc 是量子化学和材料模拟软件里非常重要的一个库,它提供各种交换-关联(XC) 功能的实现.

编译libxc需要和qe主程序使用相同的编译器,以免识别错误。图省事不用cmake了,直接用传统 GNU make方式,在源代码目录下执行

1
2
3
4
5
6
tar -xjvf libxc-7.0.0.tar.bz2
cd libxc-7.0.0
autoreconf -i
./configure FC=ifx CC=icx --prefix=/opt/libxc
make -j 8
sudo make install

下载wannier90源代码

下载wannier90.v3.1.0.tar.gz(最新版)安装包,解压然后拷贝到QE7.5/archive下,并改名为v3.1.0。

编译安装qe-7.5

生成配置文件,由于在同一台机器上安装了lammps,公用的依赖不必重新安装,在源代码目录下创建并进入build文件夹,然后在bash终端中依次运行下列指令。

1
2
3
4
sudo apt install pkg-config
cmake .. -DCMAKE_C_COMPILER=mpiicx -DCMAKE_CXX_COMPILER=mpiicpx -DCMAKE_Fortran_COMPILER=mpiifx -DMPI=ON -DMKL=ON -DQE_ENABLE_OPENMP=ON -DQE_ENABLE_LIBXC=ON -DLIBXC_ROOT=/opt/libxc -DCMAKE_BUILD_TYPE=Release
make all -j 12
sudo cmake --install . --prefix /usr/local
作者

Sograffy

发布于

2025-12-28

更新于

2025-12-28

许可协议