前言
CP2K有三种安装方式:
- 先依次手动编译CP2K所需要的各个库,然后再编译CP2K,具体过程见官方说明https://github.com/cp2k/cp2k/blob/master/INSTALL.md。我不推荐这种做法,因为CP2K涉及的库特别多,一个一个手动编译颇为麻烦。如果你有经验和耐心可以这么鼓捣。
- 使用CP2K自带的toolchain脚本。toolchain可以自动把CP2K依赖的各种库都一一下载并且自动编译,最后输入几行命令再把CP2K编译出来就OK了。整个过程非常简单省事,下文第2节就介绍这种做法。
- 直接用官方预编译的ssmp版,下载后直接就能用,极为方便,下文第3节会说具体做法。
下载地址:https://github.com/cp2k/cp2k/releases/
基于toolchain安装CP2K
- 安装MKL数学库
Intel官网免费注册并下载Intel OneAPI base toolkit离线安装包,安装好后添加环境变量(~/.bashrc)
source /opt/intel/oneapi/mkl/[实际版本号]/env/vars.sh - 安装依赖库
cd /你的路径/cp2k-8.1/tools/toolchain/
./install_cp2k_toolchain.sh --with-sirius=no --with-openmpi=system --with-plumed=install --enable-cuda=no --gpu-ver=no --with-cmake=system --with-cosma=no --with-intelmpi=system
- 注意:toolchain在安装依赖过程里需要下载包,最好开个梯子否则某些库是下载不了的。或者手动下载后放到buildl目录里。
- 执行完后拷贝/你的路径/cp2k-8.1/tools/toolchain/install/arch/到/你的路径/cp2k-8.1/arch目录下
编译CP2K
source /你的路径/cp2k-8.1/tools/toolchain/install/setup
cd /你的路径/cp2k-8.1
make -j 48 ARCH=local VERSION="ssmp psmp"
- 参数说明:-j 48 ,是使用的cpu核数按照自己电脑配置设置
- 编译完后会在/你的路径/cp2k-8.1/exe/local目录下
运行测试
ssmp版本:cp2k.ssmp test.inp |tee test.out
popt版本:mpirun -np 4 cp2k.popt test.inp | tee test.out