type
status
date
slug
summary
tags
category
icon
password
CP2K是什么
CP2K是一款非常好的第一性原理程序
,开源且免费,跑中、大周期性体系比起主流的基于平面波的程序如Quantum ESPRESSO、VASP等速度快得多。这里采用的方法还是使用虚拟机
Ubuntu 22.04.4系统
下操作 使用的用户名为ywba
配置为AMD 3700x 8核16线程
此处使用的是虚拟机 所以采用的是1处理器4核
内存给予了8G
以下操作会按照这个配置来进行操作,如果配置不同要根据实际情况进行修改
CP2K分为官方预编译版本和自编译版本
官方预编译版
只提供ssmp,为了兼容没有根据CPU内核进行优化、没有利用SIMD指令集,也没用MKL。在某些任务下CPU占用率低,无法发挥应有的性能。
自编译版本
安装时间长但可以编译出sopt、ssmp、popt、psmp四个版本,使得可以发挥出应用的性能,在计算上更快。
预编译版本的安装会在本文末尾加上一、安装前的准备
1.编译所需的软件包
CP2K是基于
Fortran
的程序,但它依赖的一堆库很多都是C/C++
写的,所以Fortran和C/C++编译器
都得有。在Ubuntu下
是没有自带的gcc程序
,所以需要提前安装编译所需要的软件2.MKL数学库
CP2K会利用到BLAS和LAPACK标准库中的子程序。默认情况下会用OpenBLAS库提供的这部分子程序,但据说OpenBLAS的LAPACK子程序的效率不如Intel的MKL数学库好,因此改用MKL可能计算速度更快。
首先进入
Intel
的oneAPI Base Toolkit
官网获取下载链接选择
Linux-Online installer或Offline installer
建议网络不好的情况下使用
离线安装
的方式,选择Offline installer,先在本地下载安装包,然后上传到服务器之上,本文采用的方式就是离线安装。如果网络允许的情况下,选择Online installer在线安装选项后会有相应的下载代码
,例如如下安装时
注意安装路径
后一路下一步安装即可安装完成后
配置一下MKL数学库的环境变量
二、安装CP2K
这里使用CP2K自带的
toolchain脚本
。toolchain脚本
可以自动
把CP2K依赖的各种库都一一下载并且自动编译,操作上比较简单方便
。首先需要去下载CP2K软件包
选择需要的版本进行下载
输入以上命令后会进行自动下载及编译库文件,在本机
AMD 3700X四核
的情况下也需要一个小时左右,所以需要耐心等待
结束之后若没有报错的话就是这个样子
接下来就可以开始编译CP2K了
首先把
cp2k文件夹下/tools/toolchain/install/arch/
的全部文件
拷贝到cp2k文件夹下arch
目录中然后运行如下指令进行编译,编译时长跟配置上有关系,本文在此处编译时用了三十分钟左右
顺利的话正常情况下应该是这个样子的
编译成功后
添加CP2K的环境变量
至.bashrc
文件中此时可以运行以下指令查看是否安装成功
三、官方预编译
首先进入官方下载的网址
需要下载软件的本体和对应架构预编译完的文件
这里本文使用的
cpu
是x86架构
的,所以下载x86架构的ssmp
文件即可,如果使用的是arm架构的cpu
,尝试使用aarch64的ssmp文件
把下载好的软件包进行解压
然后添加环境变量至
.bashrc
文件当中测试
安装好需要测试是否可用,这个地方可以使用
卢天老师
提供的测试文件进行测试创建一个名为
test.inp
的文件用来放置测试文件数据接下来就可以在该文件目录下运行指令进行计算
参考文章
1.卢天老师CentOS下CP2K安装教程
2.卢天老师CP2K测试文件
3.CP2K软件包
- 作者:ywba
- 链接:https://www.ywba.top/article/8622702e-9f34-4a65-9a69-9b215674ee72
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。