2)运行安装程序,按照提示输入yes或回车;
3)打开.bashrc文件,在里面添加“conda config --set auto_activate_base false”语句,避免Conda环境在进入终端的自启动。重新进入终端后,输入"conda"指令,出现指令介绍,表明conda安装成功。复制代码
- bash Miniconda3-py37_4.11.0-Linux-x86_64.sh
3,创建CP2K-9.1的环境并编译
1)首先是在conda中创建名为“cp2k-v9.1”的环境;
2)进入cp2k-v9.1的conda环境,并编译cp2k-9.1(https://anaconda.org/conda-forge/cp2k),等待屏幕提示完成;复制代码
- conda create --name cp2k-v9.1
3)创建CP2K_DATA_DIR目录的环境变量,下载cp2k-9.1的安装包(https://github.com/cp2k/cp2k/rel ... .0/cp2k-9.1.tar.bz2),网络好的话(**上网),可以直接用wget下载,网络不好的话,可利用Github文件的加速网站(https://ghproxy.com/)下载,把上述链接输入到网站中便能下载;复制代码
- conda env list #罗列conda环境
- conda activate cp2k-v9.1 #进入cp2k-v9.1的环境
- conda install -c conda-forge cp2k #默认安装cp2k-v9.1
4)重启终端,安装openmpi-4.1.1复制代码
- wget https://github.com/cp2k/cp2k/releases/download/v9.1.0/cp2k-9.1.tar.bz2
- or
- wget https://ghproxy.com/https://github.com/cp2k/cp2k/releases/download/v9.1.0/cp2k-9.1.tar.bz2
- tar -jxvf cp2k-9.1.tar.bz2
- vi ~/.bashrc
- export CP2K_DATA_DIR=/home/user/cp2k-9.1/data #cp2k-9.1的放置目录任意
如果此时在终端中输入cp2k.psmp,会出现mpi的运行错误,提示"libmpi.so.40:cannot open shared object file",其原因是大概率是python环境中的MPI无法被调用,可以加入到.bashrc文件中,使其调用(https://stackoverflow.com/questi ... -shared-object-file)。在.bashrc文件中加入miniconda3自身所携带的openmpi的环境变量,发现运行时仍然会报错,这大概率是因为,python中的openmpi可能存在组件不完善的情况。复制代码
- conda activate cp2k-v9.1 #重启终端后,重新进入cp2k-v9.1的conda环境
我们可在官网下载openmpi-4.1.1的安装包,并参考卢老师的帖子安装openmpi-4.1.1(http://sobereva.com/451)。安装完成后,重新进入终端,输入“conda activate cp2k-v9.1”,进入conda运行环境,此时输入“cp2k.psmp -v”,能看到cp2k的编译信息。
4,算例测试
测试了CP2K的一些官方算例,和sob老师博文(http://sobereva.com/587)中的算例,都能正常运行(杂化泛函不能计算,原始组件中缺少libint库,不知道后续开发者会不会更新),运行指令如下:
上述是以openmpi的方式运行cp2k,默认使用机器的全部核心,如果想以MPI的方式运行,可在.bashrc中输入“export OMP_NUM_THREADS=1”,保存退出后,重新进入终端,用下列语句运行:复制代码
- nohup cp2k.psmp *.inp > *.out & #符号“*”处代表具体文件名
- or
- nohup cp2k.psmp *.inp 1 > *.out 2 > *.err &
运行上述指令后,top进入终端,可以看到4个cp2k.psmp进程在运行,其中的4可以根据实际情况修改为自己想要的核心数。运行完计算后,可输入“conda deactivate”,退出cp2k-v9.1的运行环境。复制代码
- mpirun -np 4 cp2k.psmp *.inp 1>*.out 2>*.err
5,总结
希望本次帖子能够对编译CP2K的伙伴们一些有益的参考,本文的排版没有调整(考虑到多次调整,管理员审核也比较麻烦,以后发帖会调整好排版)。
Loading channels: done
# Name Version Build Channel
cp2k 6.1.0 h78d79aa_1 conda-forge
cp2k 6.1.0 hc6cf775_2 conda-forge
cp2k 6.1.0 hc6cf775_3 conda-forge
cp2k 7.1.0 h236a147_1 conda-forge
cp2k 7.1.0 h7866383_4 conda-forge
cp2k 7.1.0 h7866383_5 conda-forge
cp2k 7.1.0 hc6cf775_1 conda-forge
cp2k 7.1.0 hdefa2d7_2 conda-forge
cp2k 7.1.0 hdefa2d7_3 conda-forge
cp2k 7.1.0 py38_nompi_1006 conda-forge
cp2k 7.1.0 py38_nompi_1007 conda-forge
cp2k 7.1.0 py38_openmpi_6 conda-forge
cp2k 7.1.0 py38_openmpi_7 conda-forge
cp2k 8.1.0 py38_nompi_1000 conda-forge
cp2k 8.1.0 py38_nompi_1001 conda-forge
cp2k 8.1.0 py38_nompi_1002 conda-forge
cp2k 8.1.0 py38_nompi_1003 conda-forge
cp2k 8.1.0 py38_nompi_1004 conda-forge
cp2k 8.1.0 py38_nompi_1005 conda-forge
cp2k 8.1.0 py38_openmpi_0 conda-forge
cp2k 8.1.0 py38_openmpi_1 conda-forge
cp2k 8.1.0 py38_openmpi_2 conda-forge
cp2k 8.1.0 py38_openmpi_3 conda-forge
cp2k 8.1.0 py38_openmpi_4 conda-forge
cp2k 8.1.0 py38_openmpi_5 conda-forge
cp2k 8.2.0 py38_nompi_1000 conda-forge
cp2k 8.2.0 py38_nompi_1001 conda-forge
cp2k 8.2.0 py38_openmpi_0 conda-forge
cp2k 8.2.0 py38_openmpi_1 conda-forge
cp2k 9.1.0 py39_openmpi_0 conda-forge
abin 发表于 2022-4-22 10:06
这有类似的视频教程
【CP2K v8.2.0 MPI并行版安装 无需root授权-哔哩哔哩】 https://b23.tv/BPLvyC7
Yan_njit 发表于 2022-4-22 13:35
是的,王老师,不过官方提供的python环境下的python版,没有libint库,不能做杂化泛函的相关计算,不知道 ...
neoxialulu 发表于 2023-7-30 18:29
各位好,请问有人试过在conda的CP2K中运行make ...... libcp2k命令,得到libcp2k.a,以被gromacs调用吗?或 ...
neoxialulu 发表于 2023-7-30 18:29
各位好,请问有人试过在conda的CP2K中运行make ...... libcp2k命令,得到libcp2k.a,以被gromacs调用吗?或 ...
neoxialulu 发表于 2023-8-2 00:13
谢谢您的帮助。我进行尝试后,发现conda版cp2k要make出library文件可能比较困难,因为该版本已经预编译好, ...
欢迎光临 计算化学公社 (http://bbs.keinsci.com/) | Powered by Discuz! X3.3 |