计算化学公社

 找回密码 Forget password
 注册 Register
Views: 2874|回复 Reply: 11
打印 Print 上一主题 Last thread 下一主题 Next thread

[CP2K] intel mpi安装最新版cp2k 2024.3的方法

[复制链接 Copy URL]

6

帖子

0

威望

23

eV
积分
29

Level 2 能力者

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 NeedleCandy 于 2024-12-16 19:41 编辑

之前用openmp编译了一版,mpirun运行的时候老是中断。
因为最新版intel mpi改用ifx的问题原以为现在的cp2k只能用openmp编译,但搜索发现了cp2k支持ifx的最新修订版https://github.com/cp2k/cp2k/tree/master,直接下载,toolchain的设置为./install_cp2k_toolchain.sh     --with-ifx     --with-intelmpi     --with-intel=system     --with-cmake=system     --with-openblas=no     --with-mkl=system --with-elpa=no    --with-sirius=no  --with-libint=install     --with-fftw=install     --with-libxc=install     --with-plumed=install     -j 64,顺利安装各种库。
编译cp2k时下载dbcsr源码包,解压到cp2k下的exts目录,重命名为dbscr。运行稳定快速。

894

帖子

3

威望

1684

eV
积分
2638

Level 5 (御坂)

傻傻的木瓜

2#
发表于 Post on 2024-12-16 19:54:49 | 只看该作者 Only view this author
有点意思,期待官方的编译器支持列表更新。可能因为相关commit处于2024.2和2024.3版发布中间,需要等到下一个大版本出来才会更改。

不知道新版Intel编译器编译的CP2K在长时间AIMD中还有没有类似这帖所说的内存消耗过多的问题,期待勇士测试。
√546=23.36664289109

6

帖子

0

威望

23

eV
积分
29

Level 2 能力者

3#
 楼主 Author| 发表于 Post on 2024-12-16 19:57:50 | 只看该作者 Only view this author
本帖最后由 NeedleCandy 于 2024-12-16 20:01 编辑
Uus/pMeC6H4-/キ 发表于 2024-12-16 19:54
有点意思,期待官方的编译器支持列表更新。可能因为相关commit处于2024.2和2024.3版发布中间,需要等到下一 ...
之前用openmp编译的cp2k,七八十个原子的MD如果用intel mpi运行内存能到200多G;现在intelmpi重新编译就正常占用,二十几G

6万

帖子

99

威望

5万

eV
积分
120137

管理员

公社社长

4#
发表于 Post on 2024-12-17 05:34:36 | 只看该作者 Only view this author
注意分清楚OpenMP和OpenMPI,有天壤之别
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

356

帖子

0

威望

2253

eV
积分
2609

Level 5 (御坂)

5#
发表于 Post on 2024-12-19 17:20:59 | 只看该作者 Only view this author
sobereva 发表于 2024-12-17 05:34
注意分清楚OpenMP和OpenMPI,有天壤之别

这个方案,在amd,zen4机器上,行不通。测试算例,会报错的。能通过的功能,速度提升也不明显,计算结果的差别,也很大。确实需要高人指点

158

帖子

2

威望

3555

eV
积分
3753

Level 5 (御坂)

6#
发表于 Post on 2024-12-19 19:29:52 | 只看该作者 Only view this author
gog 发表于 2024-12-19 17:20
这个方案,在amd,zen4机器上,行不通。测试算例,会报错的。能通过的功能,速度提升也不明显,计算结果 ...

amd用spack

356

帖子

0

威望

2253

eV
积分
2609

Level 5 (御坂)

7#
发表于 Post on 2024-12-19 20:48:25 | 只看该作者 Only view this author

网络不好。不像win下,win里,可以整个代理搞

158

帖子

2

威望

3555

eV
积分
3753

Level 5 (御坂)

8#
发表于 Post on 2024-12-19 21:41:44 | 只看该作者 Only view this author
gog 发表于 2024-12-19 20:48
网络不好。不像win下,win里,可以整个代理搞

还有个docker镜像可以试试,本地转换为SIF上传用。

评分 Rate

参与人数
Participants 1
eV +2 收起 理由
Reason
ghifi37 + 2 好物!

查看全部评分 View all ratings

894

帖子

3

威望

1684

eV
积分
2638

Level 5 (御坂)

傻傻的木瓜

9#
发表于 Post on 2024-12-19 23:56:29 | 只看该作者 Only view this author
本帖最后由 Uus/pMeC6H4-/キ 于 2024-12-20 00:29 编辑
Uus/pMeC6H4-/キ 发表于 2024-12-16 19:54
有点意思,期待官方的编译器支持列表更新。可能因为相关commit处于2024.2和2024.3版发布中间,需要等到下一 ...

如果我没看错的话,感觉https://github.com/cp2k/cp2k/com ... 9f079581eb783509994这个commit好像有些隐藏的对Intel编译器和MPI的假定,容易在启用--with-intel=system和--with-intelmpi=system时踩坑。尝试列举stage0/install_intel.sh和stage1/install_intelmpi.sh设定的几个环境变量:

版本
更改前
更改后
选项
--with-intel-classic=yes
--with-intel-classic=no
with-ifx=yes
with-ifx=no
CC
icc
icx
icx
icx
CXX
icpc
icpx
icpx
icpx
FC
ifort
ifort
ifx
ifort
MPICC
mpiicc
mpiicc
mpiicx
mpiicc
MPICXX
mpiicpc
mpiicpc
mpiicpx
mpiicpc
MPIFC
mpiifort
mpiifort
mpiifx
mpiifort
I_MPI_CC
icc
icx
icx
icx
I_MPI_CXX
icpc
icpx
icpx
icpx
I_MPI_FC
ifort
ifort
ifx
ifort

(论坛上表格排版还是挺不容易的)

可见修改前--with-intel-classic只能切换C/C++的新旧编译器(x结尾为新,无x结尾为旧)而固定Fortran的编译器为的ifort,修改后--with-ifx只能切换Fortran的新旧编译器而固定C/C++的编译器为的icx/icpx。CP2K本身是用Fortran编译器的,但是工具链一大堆依赖库肯定有用C/C++编译器的,上面这样没有明说的更改可能在不特定的计算机上给本就充满挑战的CP2K安装添乱。最好还是有谁确认之后在github发个issue提醒一下,考虑到新旧编译器可能在一个Intel编译环境里共存,最理想的情况应该是能在install_cp2k_toolchain.sh里分别指定C/C++和Fortran的编译器版本。

上次尝试在集群编译CP2K时就因为部分依赖库疑似不兼容新C/C++编译器而make失败,切换成旧C/C++编译器才make成功(两种情况下make前一步的工具链安装倒是均无报错),当然也不排除我这的集群里Intel OneAPI模块安装有瑕疵。虽然那帖说的是2024.1版,但是实测带有--with-ifx=yes的2024.3+开发版会同样故障。

√546=23.36664289109

3

帖子

0

威望

223

eV
积分
226

Level 3 能力者

10#
发表于 Post on 2025-3-11 11:48:57 | 只看该作者 Only view this author
请问一下,我按上述命令编译完成后,重新下载了dbcsr源码放在exts下面,替换了原来的dbscr,但是make psmp的时候还是显示** No FYPP submodule available, please read README.md on how to properly download DBCSR.  Stop. cp2k-2025.1/exts/build_dbcsr//Makefile:198: *** No FYPP submodule available, please read README.md on how to properly download DBCSR.  Stop.就报错了,请问一下这个该如何解决呢?谢谢啊

894

帖子

3

威望

1684

eV
积分
2638

Level 5 (御坂)

傻傻的木瓜

11#
发表于 Post on 2025-3-11 14:29:56 | 只看该作者 Only view this author
Arvin_nju 发表于 2025-3-11 11:48
请问一下,我按上述命令编译完成后,重新下载了dbcsr源码放在exts下面,替换了原来的dbscr,但是make psmp ...

请按照http://sobereva.com/586的操作去Release CP2K 2025.1下载目前最新的稳定发行版并安装,肯定没这个问题。(那篇博文用的gcc,要换成intel编译器的话自行折腾去。)

这帖现在模仿意义没有去年12月那会大了,楼主写这帖的时候其所需功能还没更新到发行版里,所以特意用了master分支的研发版而不是2024.3的稳定发行版来安装。我记得就exts目录下dbcsr的内容而言,从master分支下载到的(比如点了那个绿色Code)与从release下载到的有点区别。

(注:从Commit 50e4db8来看,未来对dbcsr库的处理又和现在不同了……)
√546=23.36664289109

910

帖子

1

威望

7880

eV
积分
8810

Level 6 (一方通行)

12#
发表于 Post on 2025-3-11 16:54:50 | 只看该作者 Only view this author
Uus/pMeC6H4-/キ 发表于 2024-12-19 23:56
如果我没看错的话,感觉https://github.com/cp2k/cp2k/com ... 9f079581eb783509994这个commit好像有些隐 ...

从这个issue(https://github.com/cp2k/cp2k/issues/3866)来看,虽然现在存在with-ifx这个选项,但是并没有完全支持ifx。

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-15 17:02 , Processed in 0.148796 second(s), 21 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list