计算化学公社

标题: 超详细CP2K编译过程,GNU9.3+intel MKL+openmpi【含视频】 [打印本页]

作者
Author:
啦啦黑还黑    时间: 2020-8-18 12:49
标题: 超详细CP2K编译过程,GNU9.3+intel MKL+openmpi【含视频】
本帖最后由 啦啦黑还黑 于 2020-8-18 13:41 编辑

编译视频链接:https://www.bilibili.com/video/BV1Y54y1e7Yx/
学习圈子链接:https://mp.weixin.qq.com/s/Rr27TZkKL6shCEfPr8icPA

【编译之前的简介】
目前,CP2K最近稳定版是7.1版本,master版本有8.0(暂时不建议用)。编译6.1之前的版本容易的多,此文章主要介绍7.1版本的编译。

(, 下载次数 Times of downloads: 128)

一般只需要编译popt版本或者psmp版本就行了,这两个版本可以跨节点并行。psmp采用MPI+OpenMP混编,内存效率高,计算速度两个基本一样。
预编译版本用ssmp(openmp并行,计算效率低),sopt只能单核使用。

cp2k的编译方法很多。这里介绍一些常见的方法:
(, 下载次数 Times of downloads: 124)
(1)第一种方法是直接在 https://github.com/cp2k/cp2k/releases/ 中下载cp2k-7.1-Linux-x86_64.ssmp使用的时候定义一下并行核数,只能节点内部并行
export OMP_NUM_THREADS=24
cp2k-7.1-Linux-x86_64.ssmp cp2k.inp 1>cp2k.out 2>cp2k.err


(2)第二种方法是只针对与Ubuntu系统的,直接 apt-get install cp2k,可直接安装各种ssmp popt psmp等版的 cp2k5.1(Ubuntu18) cp2k6.1(Ubuntu20)。

(3)第三种方法直接通过cp2k/arch文件夹中的已经存在的一些模板文件编译,这种方法需要我们提前安装各种库文件,如果要安装的插件多,非常不方便。

(4)./tools/toolchain 方法是最为推荐的自动安装各种库和插件,可以方便编译出非常全面的cp2k(包含elpa pexsi QUIP plumed等)。

(5)静态库版本,这个需要把库文件都编译进去二进制文件里,在新的服务器使用,直接上传已经编译好的二进制文件就可以了。







【tools/toolchain方法编译,intel MKL + GNU9.3 + openmpi】
toolchain运行的大致流程图:
(, 下载次数 Times of downloads: 118)

(1)准备升级gcc,如果用cp2k6.1以及之前的版本,centos自带的gcc4.8.5已经足够了。
但是要编译cp7.1,必须手动升级gcc g++ gfortran到 7.3 、7.5、 8.3、或 9.3版本,千万别不信邪,头铁用别的gcc版本,最后make test的时候就傻眼了,我用gcc9.1就翻过车。
升级方法一:源码编译:https://www.liuhaolin.com/linux/535.html
升级方法二:scl devtoolset:
安装centos-release-scl
yum install centos-release-scl
安装 devtoolset
yum install devtoolset-9-gcc*
激活
scl enable devtoolset-9 bash



(2)安装Intel MKL库,参考http://bbs.keinsci.com/thread-18600-1-1.html
MKL库目前是免费的,CentOS下可以运行以下两行命令安装。期间会下载几百兆的文件,文件会被安装到/opt/intel目录下,占3GB多(对于2020-Jul-10时下载的版本而言)。如果你之前机子里装过Intel编译器,且在装的时候已经选择装了MKL,就不需要再这么装一遍了。

添加intel的源:
yum-config-manager --add-repo https://yum.repos.intel.com/mkl/setup/intel-mkl.repo

下载并安装MKL:
yum install -y intel-mkl

source /opt/intel/compilers_and_libraries_2020/linux/mkl/bin/mklvars.sh intel64 ilp64

(3)toolchain安装各种库文件
cd  tools/toolchain
./install_cp2k_toolchain.sh -h

查看默认的设置,一定要注意所用的变量,默认为system/install/no

我们系统环境变量里已经有的库用--with-****=system,会自动在系统环境路径里寻找。如果没有的库用--with-****=install,脚本会自动联网下载安装。如果不想安装的库--with-****=no自动下载的地址是:https://www.cp2k.org/static/downloads/


一般来说系统默认的配置方案就是合理的。一定需要写的有一下几点:
./install_cp2k_toolchain.sh  \
--with-openmpi=install \
--math-mode=mkl \
--with-scalapack=no


首先是openmpi和 mpich 二选一 (--with-openmpi=install)或(--with-mpich=install
然后是选择mkl库,--math-mode=mkl(记得提前加载 source /opt/intel/compilers_and_libraries_2020/linux/mkl/bin/mklvars.sh intel64 ilp64
--with-scalapack=no 只要查到有mkl库存在,就不用装openblas和scalapack了


如果要安装QUIP,PEXSI,plumed需要写上所有的install
./install_cp2k_toolchain.sh \
--math-mode=mkl \
--with-openmpi=install \
--with-scalapack=no \
--with-ptscotch=install \
--with-parmetis=install \
--with-metis=install \
--with-superlu=install \
--with-pexsi=install \
--with-quip=install \
--with-plumed=install

注:这里如果elpa编译报错没有通过,可以在./scripts/install_elpa.sh里的第84行的../configure前一行添加:
SCALAPACK_LDFLAGS="-L$MKL_HOME/lib/intel64 -lmkl_scalapack_lp64 -lmkl_gf_lp64 -lmkl_sequential \
                             -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm -Wl,-rpath,$MKL_HOME/lib/intel64" \
SCALAPACK_FCFLAGS="-L$MKL_HOME/lib/intel64 -lmkl_scalapack_lp64 -lmkl_gf_lp64 -lmkl_sequential \
                             -lmkl_core -lmkl_blacs_intelmpi_lp64 -lpthread -lm -I$MKL_HOME/include/intel64/lp64"
如果实在编译不过去elpa,建议直接--with-elpa=no,这样会略微影响到矩阵对角化的速度

都通过之后会显示:

Done!
Now copy:
  cp /opt/cp2k710/tools/toolchain/install/arch/* to the cp2k/arch/ directory
To use the installed tools and libraries and cp2k version
compiled with it you will first need to execute at the prompt:
  source /opt/cp2k710/tools/toolchain/install/setup
To build CP2K you should change directory:
  cd cp2k/
  make -j 112 ARCH=local VERSION="sopt sdbg ssmp popt pdbg psmp"



(4)编译CP2K
这时候编译cp2k所需要的所有库文件就都准备好了。按照提示:
cp /opt/cp2k710/tools/toolchain/install/arch/*  ../../arch/
source /opt/cp2k710/tools/toolchain/install/setup
cd ../../
make -j 112 ARCH=local VERSION=“popt psmp”


(5)编译CP2K完成之后测试
  1. make -j 112 ARCH=local VERSION=“popt psmp” test
复制代码
完成时候会显示:

Summary of the regression tester run from 2020-08-17_01-58-30 using local popt
Number of FAILED  tests 0
Number of WRONG   tests 0
Number of CORRECT tests 3273
Number of NEW     tests 8
Total number of   tests 3281


表示所有的测试全部通过。


(6)提交任务
  1. cp2k.popt cp2k.inp 1>cp2k.out 2>cp2k.err
复制代码






作者
Author:
倪宇晴    时间: 2020-8-18 20:24
太赞了。不过科学上网很重要啊,不科学连库文件都下不下来
作者
Author:
LaplaceL    时间: 2020-8-19 09:01
赞!
作者
Author:
朱陈    时间: 2020-8-19 10:16
干货满满
作者
Author:
Lacrimosa    时间: 2020-8-27 21:59
请问在天河二号上安装应该按照哪种方法呢
作者
Author:
walerang    时间: 2020-8-30 12:50
这东西啥用啊?
作者
Author:
Penson    时间: 2020-8-30 15:10
cp2k是我目前编译的软件中最难编译的一个,如果只是基本库的话还比较简单,最难的是把所有相应的库都找齐并安装好。gcc的编译还算比较顺利,intel的我自己还没试过。刘博分享这个蛮好的,但是估计每台机器都会出现各种独特的问题,装7.1版最主要的确实是gcc的版本
作者
Author:
haibeih    时间: 2020-9-2 16:13
我按照上述步骤,到了安装SIRIUS的时候报错:
==================== Installing SIRIUS ====================
sirius_6.4.1.tar.gz is found

Installing from scratch into /opt/cp2k-7.1/tools/toolchain/install/sirius-6.4.1

ERROR: (./scripts/install_sirius.sh, line 130) Non-zero exit code detected.

gcc,g++, gfortran版本都是官网推荐的8.3.1。log文件里说是和vdwxc_init_mpi有关,不知道是不是编译器的问题,哎~

已经另外发帖求助了,各位大神如有答案不胜感激,卡着好几天了~谢谢

http://bbs.keinsci.com/thread-19146-1-1.html
作者
Author:
啦啦黑还黑    时间: 2020-9-2 16:23
haibeih 发表于 2020-9-2 16:13
我按照上述步骤,到了安装SIRIUS的时候报错:
==================== Installing SIRIUS ================= ...

这个是用于纯平面波计算的,原理类似QE,可以把这个功能跳过去 --with-sirius=no     并不影响其他功能正常使用。 cp2k主打的是GPW方法,想用纯平面波方法,直接换qe或者vasp吧。
作者
Author:
haibeih    时间: 2020-9-3 15:48
啦啦黑还黑 发表于 2020-9-2 16:23
这个是用于纯平面波计算的,原理类似QE,可以把这个功能跳过去 --with-sirius=no     并不影响其他功能正 ...

谢谢你啊,按照你的方法( --with-sirius=no)确实编译通过了,需要一点注意的的是输入make -j 112 ARCH=local VERSION=“popt psmp”的时候,可能会出现“mpirun has detected an attempt to run as root.”的错误,这时候请参考Sobereva的文章http://sobereva.com/409

另外,我在做测试的时候(make -j 112 ARCH=local VERSION=“popt psmp” test),出现了以下错误,
************************************************************************************
/opt/cp2k-7.1/regtesting/local/psmp/TEST-local-psmp-2020-09-03_03-37-50/UNIT/libcp2k_unittest.out
[localhost:1362923] *** Process received signal ***
[localhost:1362923] Signal: Segmentation fault (11)
[localhost:1362923] Signal code: Address not mapped (1)
[localhost:1362923] Failing at address: 0xffffffff30
[localhost:1362923] [ 0] /lib64/libpthread.so.0(+0x12dd0)[0x7f9db63addd0]
[localhost:1362923] [ 1] /opt/cp2k-7.1/tools/toolchain/install/openmpi-4.0.1/lib/libopen-pal.so.40(+0xb48e5)[0x7f9db72198e5]
[localhost:1362923] [ 2] /opt/cp2k-7.1/tools/toolchain/install/openmpi-4.0.1/lib/libopen-pal.so.40(+0xb4863)[0x7f9db7219863]
[localhost:1362923] [ 3] /opt/cp2k-7.1/tools/toolchain/install/openmpi-4.0.1/lib/libopen-pal.so.40(+0xb4863)[0x7f9db7219863]
[localhost:1362923] [ 4] /opt/cp2k-7.1/tools/toolchain/install/openmpi-4.0.1/lib/libopen-pal.so.40(opal_hwloc201_hwloc_topology_load+0x36e)[0x7f9db721f7ae]
[localhost:1362923] [ 5] /opt/cp2k-7.1/tools/toolchain/install/openmpi-4.0.1/lib/libopen-pal.so.40(opal_hwloc_base_get_topology+0xf54)[0x7f9db71ee784]
[localhost:1362923] [ 6] /opt/cp2k-7.1/tools/toolchain/install/openmpi-4.0.1/lib/openmpi/mca_ess_hnp.so(+0x5236)[0x7f9db4bb2236]
[localhost:1362923] [ 7] /opt/cp2k-7.1/tools/toolchain/install/openmpi-4.0.1/lib/libopen-rte.so.40(orte_init+0x29a)[0x7f9db747e26a]
[localhost:1362923] [ 8] /opt/cp2k-7.1/tools/toolchain/install/openmpi-4.0.1/lib/libopen-rte.so.40(orte_submit_init+0x912)[0x7f9db74f6692]
[localhost:1362923] [ 9] mpiexec[0x400f53]
[localhost:1362923] [10] /lib64/libc.so.6(__libc_start_main+0xf3)[0x7f9db5ffc6a3]
[localhost:1362923] [11] mpiexec[0x400dde]
[localhost:1362923] *** End of error message ***
EXIT CODE:  139  MEANING:  RUNTIME FAIL
**************************************************
导致所有tests全部失败,
--------------------------------- Summary --------------------------------
Number of FAILED  tests 2789
Number of WRONG   tests 0
Number of CORRECT tests 0
Number of NEW     tests 0
Total number of   tests 2789
GREPME 2789 0 0 0 2789 X

Summary: correct: 0 / 2789; failed: 2789; 3min
Status: FAILED

不知道楼主遇到过没有,应该是openmpi的事儿~
哎,编译cp2k实在是愁人

谢谢你!

作者
Author:
mizuchi    时间: 2020-9-5 00:46
Installation process of CP2K under Arch Linux:
`trizen -S cp2k`
or whatever pacman wrapper you use.
It compiles along with all necessary dependencies and takes most appropriate compiler flags to be flawless and fast.
作者
Author:
haibeih    时间: 2020-9-10 20:29
本帖最后由 haibeih 于 2020-9-10 20:51 编辑
啦啦黑还黑 发表于 2020-9-2 16:23
这个是用于纯平面波计算的,原理类似QE,可以把这个功能跳过去 --with-sirius=no     并不影响其他功能正 ...

借个楼提醒一下,gcc版本最重要,特别注意用这种方法编译cp2k时,需要python也是用官网推荐的gcc版本编译的,即python和cp2k都要gcc、g++、g-fortran 7.3、7.5、8.3、9.3版本编译。请一定要检查!!!

另外,楼主提供的升级或者安装gcc的方法中(https://www.liuhaolin.com/linux/535.html),./configure时候别忘记加往“--enable-languages=c,c++”命令中再加上fortran,这样gcc,g++和g-fortran会一起升级!

最后,发现openmpi还是自己装的好些,不容易出错,还可以安装最新4.0.5版,用“--with-openmpi=system”就好。
我的系统是Centos8,所以可能对同样系统的朋友有些参考!

作者
Author:
snljty    时间: 2020-9-11 18:06
本帖最后由 snljty 于 2020-9-11 18:10 编辑

学长好,请问一下这个报错。
我加载了intel mkl,并设置了--with-openblas=no,但是编译过程中好像还是自动下载了OpenBLAS并且失败报错。
我用是CentOS 7.6,cp2k 7.1,Openmpi自己编译的3.1.4,Intel全家桶2019,自己编译的gcc 8.3.0。toolchain参数是
  1. ./install_cp2k_toolchain.sh --with-openmpi=system --math-mode=mkl --with-scalapack=no --with-openblas=no --with-mkl=system
复制代码

/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl/lib/intel64_lin在LD_LIBRARY_PATH里。请问为什么会这样呢?谢谢!
报错信息如下
  1. MPI is detected and it appears to be OpenMPI
  2. nvcc not found, disabling CUDA by default
  3. Compiling with 72 processes.
  4. ==================== Finding GCC from system paths ====================
  5. path to gcc is  /home/zz/gcc-8.3.0/bin/gcc
  6. path to g++ is  /home/zz/gcc-8.3.0/bin/g++
  7. path to gfortran is  /home/zz/gcc-8.3.0/bin/gfortran
  8. Found include directory /usr/include
  9. Found lib directory /home/zz/gcc-8.3.0/lib64
  10. Step gcc took 0.00 seconds.
  11. ==================== Getting proc arch info using OpenBLAS tools ====================
  12. OpenBLAS-0.3.6.tar.gz: FAILED
  13. sha256sum: WARNING: 1 computed checksum did NOT match
  14. removed ‘OpenBLAS-0.3.6.tar.gz’
  15. ERROR: (/home/zz/cp2k-7.1/tools/toolchain/scripts/get_openblas_arch.sh) Checksum of OpenBLAS-0.3.6.tar.gz could not be verified, abort.
  16. ERROR: (./scripts/setup_buildtools.sh, line 38) Non-zero exit code detected.
复制代码
$MKLROOT是/opt/intel/compilers_and_libraries_2019.5.281/linux/mkl
作者
Author:
haibeih    时间: 2020-9-14 08:20
本帖最后由 haibeih 于 2020-9-14 08:21 编辑
snljty 发表于 2020-9-11 18:06
学长好,请问一下这个报错。
我加载了intel mkl,并设置了--with-openblas=no,但是编译过程中好像还是自 ...

你先去toolchain看看报错文件,输入find -name *.log。找到对应OpenBLAS的报错呀~上传附件看看
我估计是版本和编译器不兼容的问题,一般都是这样。

作者
Author:
snljty    时间: 2020-9-14 08:40
haibeih 发表于 2020-9-14 08:20
你先去toolchain看看报错文件,输入find -name *.log。找到对应OpenBLAS的报错呀~上传附件看看
我估计是 ...

谢谢~第一次装CP2K,把OpenBLAS下载了一个最后编译成功了,下次再慢慢试吧
作者
Author:
archer    时间: 2020-9-17 18:30
make出现错误,请问您知道如何解决吗?
cp2k-7.1/Makefile:134: recipe for target 'all' failed
make[2]: *** [all] Error 2
cp2k-7.1/Makefile:123: recipe for target 'psmp' failed
make[1]: *** [psmp] Error 2
Makefile:118: recipe for target 'all' failed
make: *** [all] Error 2

作者
Author:
啦啦黑还黑    时间: 2020-9-17 21:05
archer 发表于 2020-9-17 18:30
make出现错误,请问您知道如何解决吗?
cp2k-7.1/Makefile:134: recipe for target 'all' failed
make[2] ...

保存原因还在上面呀,这几行看不出啥问题
作者
Author:
archer    时间: 2020-9-18 00:45
啦啦黑还黑 发表于 2020-9-17 21:05
保存原因还在上面呀,这几行看不出啥问题

谢谢!现在make,直接提示/home/cp2k-7.1/arch/local.“popt”: No such file or directory
作者
Author:
ShuangfeiZhu    时间: 2020-9-22 15:54
请问各位老师,按照上述步骤,前面都正常,make -j 的时候报错了,各位老师该怎么办?
(base) [room@localhost cp2k-7.1.0]$ make -j 56 ARCH=local VERSION="popt psmp"
Discovering programs ...
/home/room/cp2k-7.1.0/exts/Makefile.inc:2: *** "No DBCSR submodule available, please run 'git submodule update --init --recursive'"。 停止。
make[1]: *** [popt] 错误 2
make[1]: *** 正在等待未完成的任务....
/home/room/cp2k-7.1.0/exts/Makefile.inc:2: *** "No DBCSR submodule available, please run 'git submodule update --init --recursive'"。 停止。
make[1]: *** [psmp] 错误 2
make: *** [all] 错误 2


作者
Author:
ShuangfeiZhu    时间: 2020-9-22 16:02
各位老师,前面都没问题,后面报错如下,请问该怎么解决

(base) [room@localhost cp2k-7.1.0]$ make -j 56 ARCH=local VERSION="popt psmp"
Discovering programs ...
/home/room/cp2k-7.1.0/exts/Makefile.inc:2: *** "No DBCSR submodule available, please run 'git submodule update --init --recursive'"。 停止。
make[1]: *** [popt] 错误 2
make[1]: *** 正在等待未完成的任务....
/home/room/cp2k-7.1.0/exts/Makefile.inc:2: *** "No DBCSR submodule available, please run 'git submodule update --init --recursive'"。 停止。
make[1]: *** [psmp] 错误 2
make: *** [all] 错误 2
(base) [room@localhost cp2k-7.1.0]$ make -j 112 ARCH=local VERSION=“popt psmp” test
Discovering programs ...
make: *** 没有规则可以创建目标“psmp””。 停止。

作者
Author:
haibeih    时间: 2020-9-24 08:40
ShuangfeiZhu 发表于 2020-9-22 16:02
各位老师,前面都没问题,后面报错如下,请问该怎么解决

(base) [room@localhost cp2k-7.1.0]$ make -j  ...

你们都是怎么弄出这些问题的。按照教程一步一步来应该没啥问题吧,觉得应该提供你们到底怎么编译的,把命令打出来,另外把编译器版本之类尽可能说清楚。现在这样信息太少,无法应答~
作者
Author:
ShuangfeiZhu    时间: 2020-9-24 08:49
haibeih 发表于 2020-9-24 08:40
你们都是怎么弄出这些问题的。按照教程一步一步来应该没啥问题吧,觉得应该提供你们到底怎么编译的, ...

我真的是按照教程一步一步来的,应该是,弄了三遍。到最后都是一样的报错。我还尝试安装DBCSR,也装不上去。
作者
Author:
highlight    时间: 2020-9-24 09:10
ShuangfeiZhu 发表于 2020-9-24 08:49
我真的是按照教程一步一步来的,应该是,弄了三遍。到最后都是一样的报错。我还尝试安装DBCSR,也装不上 ...
"No DBCSR submodule available, please run 'git submodule update --init --recursive'

命令执行过了吗?看上去是安装包不全,缺少 dbcsr。不需要自己装,应该是放在 /exts 里的。
没有规则可以创建目标 psmp

忘记复制 local.psmp 了?
作者
Author:
喵星大佬    时间: 2020-10-9 07:42
本帖最后由 喵星大佬 于 2020-10-9 07:45 编辑

唯一的问题是SIRUIS编译不过,不知道是操做系统还是编译器,cmake或是其他原因

用—with-siruis=no可以正常通过

CentOS8.2,gcc8.3.1,cmake3.18.4,Openmpi4.0.3,Intel MKL 2020.2.254

test3个失败其他都过,看起来不怎么影响

这脚本用起来比以前一个个库手动编译还是舒服多了,就是没法用icc和ifot,不知道速度方面会有多大影响,估计影响也不大

作者
Author:
earthGavinLee    时间: 2020-11-7 19:32
动态库编译成功,咨询静态库如何编译。是要修改toolchain吗?在generate_arch_files.sh添加-static参数,使用toolchain编译的时候会缺很多静态库文件
作者
Author:
永华唐    时间: 2020-12-9 08:43
haibeih 发表于 2020-9-3 15:48
谢谢你啊,按照你的方法( --with-sirius=no)确实编译通过了,需要一点注意的的是输入make -j 112 ARCH= ...

我和你遇到了相同问题,最后你怎么解决的?

作者
Author:
喵星大佬    时间: 2020-12-9 14:32
永华唐 发表于 2020-12-9 08:43
我和你遇到了相同问题,最后你怎么解决的?

改一下siruis编译的脚本
作者
Author:
kyuu    时间: 2020-12-9 15:06
喵星大佬 发表于 2020-12-9 14:32
改一下siruis编译的脚本

有奶就是娘
作者
Author:
永华唐    时间: 2020-12-9 15:51
喵星大佬 发表于 2020-12-9 14:32
改一下siruis编译的脚本

可以说的具体点可以么?
作者
Author:
abin    时间: 2020-12-10 22:26
snljty 发表于 2020-9-11 18:06
学长好,请问一下这个报错。
我加载了intel mkl,并设置了--with-openblas=no,但是编译过程中好像还是自 ...

sha256sum: WARNING: 1 computed checksum did NOT match
这是错误信息。

白话文就是,未知原因导致下载安装包不完整。
作者
Author:
snljty    时间: 2020-12-10 22:41
abin 发表于 2020-12-10 22:26
sha256sum: WARNING: 1 computed checksum did NOT match
这是错误信息。

后来别的办法解决的。
我当初的问题是,为什么写了--with-openblas=no,还会去下载openblas包?
谢谢您。
作者
Author:
gog    时间: 2020-12-11 17:35
snljty 发表于 2020-12-10 22:41
后来别的办法解决的。
我当初的问题是,为什么写了--with-openblas=no,还会去下载openblas包?
谢谢 ...

我安装的时候,也这样。不过不影响后面使用mkl。
作者
Author:
DoorBell    时间: 2020-12-17 00:26
刘老师您好!请问严格按照您的方法编译出来的cp2k需要设置哪些环境变量?如果是CentOS7.8的系统需要激活scl enable devtoolset-9 bash吗?
作者
Author:
highlight    时间: 2020-12-17 09:05
DoorBell 发表于 2020-12-17 00:26
刘老师您好!请问严格按照您的方法编译出来的cp2k需要设置哪些环境变量?如果是CentOS7.8的系统需要激活scl ...

应该 source /opt/cp2k710/tools/toolchain/install/setup 就可以了
gcc-9 是编译需要的,运行不需要
作者
Author:
k64_cc    时间: 2021-1-1 22:24
gog 发表于 2020-12-11 17:35
我安装的时候,也这样。不过不影响后面使用mkl。

因为那一步用的是openblas tools。toolchain脚本用它来看CPU信息。
作者
Author:
乐平    时间: 2021-1-28 16:13
按照刘博的方法安装 CP2K 7.1,卡在下面这一步了……

系统:CentOS 7.4


  1. [root@master toolchain]# ./install_cp2k_toolchain.sh \
  2. --math-mode=mkl \
  3. --with-openmpi=instal \
  4. --with-scalapack=no \
  5. --with-ptscotch=intall \
  6. --with-parmetis=install \
  7. --with-metis=install \
  8. --with-superlu=install \
  9. --with-pexsi=install \
  10. --with-quip=install \
  11. --with-plumed=install
  12. WARNING: (./install_cp2k_toolchain.sh, line 327) No MPI installation detected on your system. Ignore this message if you are using Cray Linux Environment
  13. nvcc not found, disabling CUDA by default
  14. Compiling with 16 processes.
  15. ==================== Finding GCC from system paths ====================
  16. path to gcc is  /opt/rh/devtoolset-9/root/usr/bin/gcc
  17. path to g++ is  /opt/rh/devtoolset-9/root/usr/bin/g++
  18. path to gfortran is  /opt/rh/devtoolset-9/root/usr/bin/gfortran
  19. Found include directory /usr/include
  20. Found lib directory /usr/lib64
  21. Step gcc took 0.00 seconds.
  22. ==================== Getting proc arch info using OpenBLAS tools ====================
  23. OpenBLAS detected LIBCORE = haswell
  24. OpenBLAS detected ARCH    = x86_64
  25. ==================== Installing CMake ====================
  26. cmake-3.15.1 is already installed, skipping it.
  27. Step cmake took 0.00 seconds.
  28. Step valgrind took 1.00 seconds.
  29. ==================== Installing OpenMPI ====================
  30. openmpi-4.0.1 is already installed, skipping it.
  31. Step openmpi took 0.00 seconds.
  32. Step reflapack took 0.00 seconds.
  33. ==================== Finding MKL from system paths ====================
  34. MKLROOT is found to be /public1/apps/intel/compilers_and_libraries_2018.1.163/linux/mkl
  35. libm is found in ld search path
  36. libdl is found in ld search path
  37. Using MKL provided ScaLAPACK and BLACS
  38. Step mkl took 0.00 seconds.
  39. ==================== Installing FFTW ====================
  40. fftw-3.3.8 is already installed, skipping it.
  41. Step fftw took 0.00 seconds.
  42. ==================== Installing spfft ====================
  43. SpFFT-0.9.8 is already installed, skipping it.
  44. Step spfft took 0.00 seconds.
  45. ==================== Installing LIBINT ====================
  46. libint-2.6.0 is already installed, skipping it.
  47. Step libint took 0.00 seconds.
  48. ==================== Installing LIBXC ====================
  49. libxc-4.3.4 is already installed, skipping it.
  50. Step libxc took 0.00 seconds.
  51. Step libsmm took 0.00 seconds.
  52. ==================== Installing Libxsmm ====================
  53. libxsmm-1.14 is already installed, skipping it.
  54. Step libxsmm took 0.00 seconds.
  55. Step scalapack took 0.00 seconds.
  56. ==================== Installing ELPA ====================
  57. elpa-2019.05.001.tar.gz is found
  58. Installing from scratch into /public2/wanghuan/cp2k-7.1/tools/toolchain/install/elpa-2019.05.001
  59. Step elpa took 476.00 seconds.
  60. ==================== Linking PT-Scotch to user paths ====================
  61. ERROR: (./scripts/install_ptscotch.sh) Cannot find intall/lib
  62. ERROR: (./scripts/install_ptscotch.sh, line 342) Non-zero exit code detected.

复制代码


看报错说是 “找不到 install/lib” 。
另外,我查看了 ./scripts/install_ptscotch.sh 文件,只有 106 行,并不是报错里说的 342 行啊, ERROR: (./scripts/install_ptscotch.sh, line 342) 很奇怪……

cd 到 build 路径下,也没有 PT-Scotch 文件夹,看不到相关的 log 文件……

  1. [root@master toolchain]#
  2. [root@master toolchain]# cd build/
  3. [root@master build]# ls
  4. cmake-3.15.1             fftw-3.3.8                     libxc-4.3.4          OpenBLAS-0.3.6         openmpi-4.0.1.tar.gz  setup_gcc      setup_mkl      SpFFT-0.9.8.tar.gz
  5. cmake-3.15.1.tar.gz      fftw-3.3.8.tar.gz              libxc-4.3.4.tar.gz   OpenBLAS-0.3.6.tar.gz  setup_cmake           setup_libint   setup_openmpi
  6. elpa-2019.05.001         libint-v2.6.0-cp2k-lmax-5      libxsmm-1.14         openblas_arch          setup_elpa            setup_libxc    setup_spfft
  7. elpa-2019.05.001.tar.gz  libint-v2.6.0-cp2k-lmax-5.tgz  libxsmm-1.14.tar.gz  openmpi-4.0.1          setup_fftw            setup_libxsmm  SpFFT-0.9.8
  8. [root@master build]#
  9. [root@master build]#
复制代码


请问应该怎么办?
作者
Author:
highlight    时间: 2021-1-28 16:24
乐平 发表于 2021-1-28 16:13
按照刘博的方法安装 CP2K 7.1,卡在下面这一步了……

系统:CentOS 7.4
--with-ptscotch=intall

有没有发现啥不对?
作者
Author:
乐平    时间: 2021-1-29 00:08
highlight 发表于 2021-1-28 10:24
有没有发现啥不对?

是的…… 粗心了
不过后来测试,这个设置成 --with-ptscotch=no 也行,会自动安装。
作者
Author:
anrushan    时间: 2021-2-1 13:50
按照刘老师的方法遇到了“Non-zero exit code detected.”的问题
之后按照http://bbs.keinsci.com/thread-18647-1-1.html中把脚本中版本修改为0.9.11依旧是不行,还是“Non-zero exit code detected.”的问题。
SpFFT-0.9.8.tar.gz: 确定
Checksum of SpFFT-0.9.8.tar.gz Ok
Installing from scratch into /tmp/c/cp2k-7.1/tools/toolchain/install/SpFFT-0.9.8
ERROR: (./scripts/install_spfft.sh, line 41) Non-zero exit code detected.

请问各位老师该怎么解决呢?


作者
Author:
naohjohn    时间: 2021-2-1 20:22
幸好先看了楼主的教程,CP2K的手册做的跟武功秘籍似的,能用的编译器版本,竟然要在developer页面才能找到,编译的教程里是没有的。
我猜软件应该也好用不到哪里去,到头来还是继续CPMD
(, 下载次数 Times of downloads: 85)


作者
Author:
wth1219    时间: 2021-2-9 09:49
求楼主有时间看一下最新的8.1版本要如何编译啊,真的是太难了……

另外如何在其中嵌入最新版本(1月19日更新)的LIBXC 5.1.0呢?不胜感激!
作者
Author:
wth1219    时间: 2021-2-9 09:51
本帖最后由 wth1219 于 2021-2-9 09:55 编辑
naohjohn 发表于 2021-2-1 20:22
幸好先看了楼主的教程,CP2K的手册做的跟武功秘籍似的,能用的编译器版本,竟然要在developer页面才能找到 ...

“我猜软件应该也好用不到哪里去”。

您的猜测貌似是对的,但是用起来了之后就习惯了。
作者
Author:
喵星大佬    时间: 2021-2-11 20:59
wth1219 发表于 2021-2-9 09:49
求楼主有时间看一下最新的8.1版本要如何编译啊,真的是太难了……

另外如何在其中嵌入最新版本(1月 ...

少了几个选项,然后要用libxc5.1.0的话自己改一下编译脚本就好了,就改几个字就完了
作者
Author:
abin    时间: 2021-2-11 21:27
前序方法可用,
我这里仅有两个测试报错,无关紧要。


作者
Author:
喵星大佬    时间: 2021-2-12 02:30
abin 发表于 2021-2-11 21:27
前序方法可用,
我这里仅有两个测试报错,无关紧要。

稍微有点大的区别就是不再区分popt和psmp了,默认自带--with-omp选项,合并成psmp版本了。
--with-parmetis=install 和 --with-metis=install 选项也没有用了。
作者
Author:
啦啦黑还黑    时间: 2021-2-13 18:55
8.1编译更方便了,可以在toolchain里选intel mpi了,比openmpi还要快一些,popt版本没了,都直接链接成了psmp。
作者
Author:
wth1219    时间: 2021-2-13 19:59
回复楼上几位大神,学校集群不连外网,所有配置必须一一手动完成……
作者
Author:
gog    时间: 2021-2-19 18:52
wth1219 发表于 2021-2-9 09:49
求楼主有时间看一下最新的8.1版本要如何编译啊,真的是太难了……

另外如何在其中嵌入最新版本(1月 ...

下载 cp2k开发版,即 cp2k-master
作者
Author:
gog    时间: 2021-2-19 21:43
cp2k-7.1 openmpi+mkl编译后的测试。仅sirus组件没安装。请忽略时间,测试期间有在做其他运算。
Number of FAILED  tests 31
Number of WRONG   tests 0
Number of CORRECT tests 3242
Number of NEW     tests 8
Total number of   tests 3281
GREPME 31 0 3242 8 3281 X

Summary: correct: 3242 / 3281; new: 8; failed: 31; 89min
Status: FAILED
作者
Author:
gog    时间: 2021-2-24 11:43
啦啦黑还黑 发表于 2021-2-13 18:55
8.1编译更方便了,可以在toolchain里选intel mpi了,比openmpi还要快一些,popt版本没了,都直接链接成了ps ...

请教刘博,用intel 2019.5 全家桶编译cp2kmaster20210224版本, mkl搜索的时候,提示不用mkl提供的ScaLAPACK and BLACS,个人感觉不对劲。怎么解决呢?

Found lib directory /home/al/intel/compilers_and_libraries_2019.5.281/linux/mpi/intel64/lib/release
libmpi is found in ld search path
libmpicxx is found in ld search path
Step intelmpi took 0.00 seconds.
Step valgrind took 0.00 seconds.
Step reflapack took 0.00 seconds.
==================== Linking MKL to user paths ====================
Found directory /home/az/intel/compilers_and_libraries_2019.5.281/linux/mkl
Not using MKL provided ScaLAPACK and BLACS
Step mkl took 0.00 seconds.

作者
Author:
疯狂的阿太    时间: 2021-3-17 21:57
wth1219 发表于 2021-2-13 19:59
回复楼上几位大神,学校集群不连外网,所有配置必须一一手动完成……

想请问下手动完成是指自己编译每个库文件吗?
作者
Author:
abin    时间: 2021-3-17 22:24
wth1219 发表于 2021-2-13 19:59
回复楼上几位大神,学校集群不连外网,所有配置必须一一手动完成……

没有网络没关系,

我有方法可以搞定。
作者
Author:
喵星大佬    时间: 2021-3-20 02:29
abin 发表于 2021-3-17 22:24
没有网络没关系,

我有方法可以搞定。

我寻思去网站上下好传上去也可以忽悠杯奶茶嘛
作者
Author:
abin    时间: 2021-3-20 07:29
喵星大佬 发表于 2021-3-20 02:29
我寻思去网站上下好传上去也可以忽悠杯奶茶嘛

你想得太简单了。

我指的是提供针对处理器进行优化编译,
再打包。

可提供hsw skl平台版本。

使用官方提供的预编译版本,
怎么能叫自己处理的版本呢?

对效率没有追求的,
直接使用官方提供的二进制版本,
啥都解决了。

作者
Author:
喵星大佬    时间: 2021-3-20 15:21
abin 发表于 2021-3-20 07:29
你想得太简单了。

我指的是提供针对处理器进行优化编译,

我以为你说的就是用他说的libxc5.1呢,一般就稍微改下几个toolchain里的脚本就好了,不过没试过不知道还有啥幺蛾子,针对处理器优化的话没研究过,效率比正常编译的提升大概多少可以给个数嘛
作者
Author:
abin    时间: 2021-3-20 15:26
喵星大佬 发表于 2021-3-20 15:21
我以为你说的就是用他说的libxc5.1呢,一般就稍微改下几个toolchain里的脚本就好了,不过没试过不知道还 ...

我就会编译, 就会按照教程完成测试.

我自己不会用cp2k, 没调试过算例.

不过可以给一个侧面的例子.

友方, 8179M 12x16GB, intel全套+vasp6.1.0, 那个频率大概稳定在2.4GHz
跑同一个计算, 只看了前5分钟的计算,
grep LOOP OUTCAR,
大约是每一步 140s

我也是intel编译, 不过是8260ES, 但是内存只有8条, 工作频率是2.3GHz
跑同一个计算, 只看了前5分钟的计算,
grep LOOP OUTCAR,
大约是每一步 20s
如果这里是内存搞到12条, 应该更快一点点的.

有没有优化提速, 你说呢?

作者
Author:
abin    时间: 2021-3-20 20:08
看大家编译过程,
好折腾呀。

源码中自带有Dockerfile呀,
有网络就行了,

docker build .

等待吧……
就搞定了。
好像自己编译的,就一定能快出很多似的。

作者
Author:
yiranfengbai    时间: 2021-3-25 15:07
请问,按照gcc第二种方法升级后,gcc -v 确实显示9.3.1版,可以一退出root,在个人账户下gcc -v 又显示4.8.5版,然后再进入root时显示4.8.5版,这是怎么回事啊
作者
Author:
biogon    时间: 2021-4-18 20:16
abin 发表于 2021-3-20 15:26
我就会编译, 就会按照教程完成测试.

我自己不会用cp2k, 没调试过算例.

这个差距也太大了
作者
Author:
abin    时间: 2021-4-18 21:19
biogon 发表于 2021-4-18 20:16
这个差距也太大了

差距大不大,不是我说的。

对方告诉我,
grep LOOP OUTCAR
看了前20个……
我做的版本,大概在20秒多一些。
对方的在140秒左右。

算例和源码都是对方提供的。
我用的测试机器,内存通道还不满呢。

我不会用VASP,
我仅仅是编译了,
并调整了几个编译参数。
作者
Author:
biogon    时间: 2021-4-19 11:22
本帖最后由 biogon 于 2021-4-19 15:37 编辑
ShuangfeiZhu 发表于 2020-9-22 16:02
各位老师,前面都没问题,后面报错如下,请问该怎么解决

(base) [room@localhost cp2k-7.1.0]$ make -j  ...

在/cp2k/exts 路径下执行
  1. git clone https://github.com/cp2k/dbcsr.git
复制代码
如提示fypp有问题,则再在/cp2k/exts/dbcsr下执行
  1. git submodule update --init
复制代码



作者
Author:
myyang    时间: 2021-4-27 15:23
haibeih 发表于 2020-9-10 20:29
借个楼提醒一下,gcc版本最重要,特别注意用这种方法编译cp2k时,需要python也是用官网推荐的gcc版本编译 ...

您好,我想请教您一个问题: 我在make CP2K 时, popt 可以顺利通过,但psmp 就会出现错误。 而且生成的cp2k.popt 在运行使用CPU 并行 mpirun -np N  的时候会crash, 单个CPU则可以正常通过,我感觉这是openmpi 的问题(根据你的建议自己安装的最新4.0.5版),请问你遇到过这样的问题了吗?如何解决?谢谢
作者
Author:
biogon    时间: 2021-4-27 15:58
myyang 发表于 2021-4-27 15:23
您好,我想请教您一个问题: 我在make CP2K 时, popt 可以顺利通过,但psmp 就会出现错误。 而且生成的c ...

你的什么编译器编译的openmpi?
作者
Author:
learnerNONE    时间: 2021-8-2 20:57
各位老师,我目前在用toolchain的方法编译CP2K8.1, 一切顺利直到编译quip。

编译过程的信息很少:
...
==================== Installing QUIP ====================
QUIP-1ff93b3400b83e804f0f2e857e70c5e4133d9705.tar.gz is found
Installing from scratch into /home/bin/cp2k_pool/cp2k-8.1/tools/toolchain/install/quip-1ff93b3400b83e804f0f2e857e70c5e4133d9705
ERROR: (./scripts/install_quip.sh, line 100) Non-zero exit code detected.

于是我去翻看了make.log文件,发现问题全在MPI的相关库文件缺失:
...
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_dblprec'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Isend'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_f2c'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Op_f2c'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_vector'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Alltoall'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Finalize'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Sendrecv'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_sum'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Op_c2f'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_size'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_real'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Group_free'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_indexed'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Barrier'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_commit'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_c2f'
/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/ld: /opt/intel/compilers_and_libraries_2020.4.304/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_rank'
collect2: error: ld returned 1 exit status
make[1]: *** [quip] Error 1
make[1]: Leaving directory `/home/bin/cp2k_pool/cp2k-8.1/tools/toolchain/build/QUIP-1ff93b3400b83e804f0f2e857e70c5e4133d9705/build/linux_x86_64_gfortran'
make: *** [Programs] Error 2

网上有人遇到类似情况(不是编译cp2k),解决方法是用intelmpi进行编译(没有说明问题原因)。但是我使用的是AMD核,且之前都没有用intelmpi编译,我怕两种编译运行后会有不兼容情况,而也并不清楚intel在AMD核上会不会比openmpi更高效。

请问这种情况有什么办法解决吗?谢谢!
作者
Author:
abin    时间: 2021-8-2 23:35
learnerNONE 发表于 2021-8-2 20:57
各位老师,我目前在用toolchain的方法编译CP2K8.1, 一切顺利直到编译quip。

编译过程的信息很少:

能解决你的问题吗?

http://bbs.keinsci.com/thread-24469-1-1.html

作者
Author:
learnerNONE    时间: 2021-8-3 09:50
abin 发表于 2021-8-2 23:35
能解决你的问题吗?

http://bbs.keinsci.com/thread-24469-1-1.html

感谢abin老师的回复!

我看了您给的教程,确实非常快捷方便,但是结尾提到这个是官方的预编译版本,我担心这会牺牲一点效率。而我目前使用的这个方法只剩一个quip无法解决,只是一步之遥了,可以的话,还是希望一套方法下来把quip编译好。之前也花了很多时间出坑,现在直接放弃,有点舍不得。
作者
Author:
abin    时间: 2021-8-3 10:05
learnerNONE 发表于 2021-8-3 09:50
感谢abin老师的回复!

我看了您给的教程,确实非常快捷方便,但是结尾提到这个是官方的预编译版 ...

我有提及,
如果自己本地优化编译搞不定,
那就采用预编译的版本。

效率嘛,自己测试看了。

如果采用intel套件,全程本地优化编译,
请特别留意,
保证所有的套件都才用intel来编译。

8.2.0版本,有要求,libxc cosma版本。

我试了才用intel工具链,有几个算例有错误。
不过7.1是全盘通过,可以支持AVX512指令集。
作者
Author:
abin    时间: 2021-8-3 10:53
learnerNONE 发表于 2021-8-2 20:57
各位老师,我目前在用toolchain的方法编译CP2K8.1, 一切顺利直到编译quip。

编译过程的信息很少:

https://github.com/cp2k/cp2k/issues/1617

Lucien1234,
这是你吗?

RHEL中, devtoolset-9, 应该是9.1.1吧?

既然自己编译, 看看CP2K官方支持说明呀.
https://www.cp2k.org/dev:compiler_support
其中 x86_64平台, GCC版本5.5, 7.3, 7.5, 8.3, 8.4, 9.3, 10.2, 均可.

大致的原因是,
你采用的编译器捣鼓的openMPI 或者MPICH, 和你所采用的MKL不兼容.

推荐方案,
更换编译器为官方推荐版本.
采用官方推荐的intel编译器对应的MKL版本.

重新打包处理OpenMPI或者MPICH.

或者, 我能搞定.
cp2k 8.1 8.2 GNU+MKL, 算例测试全通过.

祝好.
作者
Author:
learnerNONE    时间: 2021-8-11 21:17
abin 发表于 2021-8-3 10:53
https://github.com/cp2k/cp2k/issues/1617

Lucien1234,

非常感谢abin老师的耐心回复~

那个是我,我在github上也开了一个问题。

可能是版本的原因,但不是很确定,因为我查gcc --version的时候确实是9.3.1.后面我又按刘博i方法尝试了安装cp2k7.1,发现openmpi的版本是4.0.1,这个版本下的quip搭配2020mkl是可以正常安装的。

Intel的编译器过期了,暂时还没有新的,只能申请到了再试试...

试过多次8.1的安装无果,现已决定躺平,就用7.1的好了...
作者
Author:
Siling_S    时间: 2021-9-3 20:24
请问刘博,服务器默认的编译器是intelmpi,是否需要注释掉或者改成openmpi?因为按照您的方法编出来的CP2K跑多核并行的时候速度还没有单核快,所以猜是不是编译过程出了问题。。
作者
Author:
hitvip    时间: 2021-9-4 19:33
刘老师,您好,我的系统是 CentOS Linux release 8.4.2105
想安装 cp2k8.2,运行了:
  1. > --math-mode=mkl \
  2. > --with-openmpi=install \
  3. > --with-scalapack=no \
  4. > --with-ptscotch=install \
  5. > --with-parmetis=install \
  6. > --with-metis=install \
  7. > --with-superlu=install \
  8. > --with-pexsi=install \
  9. > --with-quip=install \
  10. > --with-plumed=install
复制代码


但是提示错误:不认识 metis和parmetis选项:

(./install_cp2k_toolchain.sh) Unknown flag: --with-metis=install
(./install_cp2k_toolchain.sh) Unknown flag: --with-parmetis=install

是因为我的gcc版本是8.4.1,而不是9吗?

谢谢



作者
Author:
hitvip    时间: 2021-9-4 19:50
也无法安装 scl 包。提示

  1. sudo yum install centos-release-scl scl-utils-build
  2. Last metadata expiration check: 1:01:59 ago on Sat 04 Sep 2021 06:39:54 AM EDT.
  3. No match for argument: centos-release-scl
  4. Error: Unable to find a match: centos-release-scl
复制代码

作者
Author:
喵星大佬    时间: 2021-9-5 06:38
hitvip 发表于 2021-9-4 19:33
刘老师,您好,我的系统是 CentOS Linux release 8.4.2105
想安装 cp2k8.2,运行了:

cp2k 8系列不需要写着两个,就用系统自带的gcc8.4就可以了
作者
Author:
hitvip    时间: 2021-9-5 10:07
本帖最后由 hitvip 于 2021-9-5 10:18 编辑
喵星大佬 发表于 2021-9-5 06:38
cp2k 8系列不需要写着两个,就用系统自带的gcc8.4就可以了

非常感谢您的解答,如您所说,我去掉了那两个软件包,并且采用cent8自带的gcc 8.4.1 来编译,但是我现在就差 QUIP 编译不过去,其它都没有问题。

提示: ERROR: (./scripts/stage6/install_quip.sh, line 107) Non-zero exit code detected.
搜了下论坛,也有人遇到了这个问题(http://bbs.keinsci.com/thread-20432-1-1.html),但没有给出解决办法。麻烦大家给看看,谢谢。

这是我用的toochain:
  1. ./install_cp2k_toolchain.sh \
  2. --with-openmpi=install \
  3. --with-cmake=install \
  4. --with-libint=install \
  5. --with-ptscotch=install  \
  6. --with-pexsi=install \
  7. --with-superlu=install \
  8. --with-quip=install \
  9. --with-plumed=install \
  10. --with-sirius=install \
  11. --with-cosma=install
复制代码


然后我查了下QUIP编译出错的log,似乎是mkl引起的问题,部分log文件内容如下:
  1. Making Programs

  2. ********************************************
  3. rm -f /home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/build/linux_x86_64_gfortran/Makefile
  4. cp /home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/Programs/Makefile /home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/build/linux_x86_64_gfortran/Makefile
  5. make -C /home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/build/linux_x86_64_gfortran QUIP_ROOT=/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd VPATH=/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/Programs -I/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd -I/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/arch
  6. make[1]: Entering directory '/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/build/linux_x86_64_gfortran'
  7. gfortran  -x f95-cpp-input -ffree-line-length-none -ffree-form -fno-second-underscore -fPIC -g  -I/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/libAtoms -I/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/fox/objs.linux_x86_64_gfortran/finclude -O3  -DGETARG_F2003 -DGETENV_F2003 -DGFORTRAN -DFORTRAN_UNDERSCORE -D'GIT_VERSION="NOT_A_GIT_REPOSITORY"'  -D'QUIP_ARCH="linux_x86_64_gfortran"' -D'SIZEOF_FORTRAN_T=2' -DHAVE_PRECON -DHAVE_QR  -c  /home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/Programs/vacancy_map_mod.f95 -o vacancy_map_mod.o
  8. gfortran  -x f95-cpp-input -ffree-line-length-none -ffree-form -fno-second-underscore -fPIC -g  -I/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/libAtoms -I/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/fox/objs.linux_x86_64_gfortran/finclude -O3  -DGETARG_F2003 -DGETENV_F2003 -DGFORTRAN -DFORTRAN_UNDERSCORE -D'GIT_VERSION="NOT_A_GIT_REPOSITORY"'  -D'QUIP_ARCH="linux_x86_64_gfortran"' -D'SIZEOF_FORTRAN_T=2' -DHAVE_PRECON -DHAVE_QR  -c  /home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/Programs/quip.f95 -o quip.o
  9. gfortran  -o quip  quip.o vacancy_map_mod.o -L. -lquiputils -lquip_core  -latoms  -O3  -L/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/src/fox/objs.linux_x86_64_gfortran/lib -lFoX_sax -lFoX_wxml -lFoX_utils -lFoX_common -lFoX_fsys  -L/home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64 -Wl,-rpath=/home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64 -lmkl_scalapack_lp64 -Wl,--start-group -lmkl_gf_lp64 -lmkl_sequential -lmkl_core -lmkl_blacs_openmpi_lp64 -Wl,--end-group -lpthread -lm -ldl  
  10. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Waitall'
  11. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_comm_null'
  12. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Abort'
  13. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Waitany'
  14. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_f2c'
  15. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Wtime'
  16. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_dup'
  17. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_double'
  18. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Op_free'
  19. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_create'
  20. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Group_incl'
  21. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Attr_get'
  22. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_dblcplex'
  23. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Init'
  24. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_create_struct'
  25. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Bcast'
  26. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Alltoallv'
  27. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Cart_create'
  28. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Scatterv'
  29. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Initialized'
  30. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_free'
  31. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Iprobe'
  32. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Testall'
  33. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Allgatherv'
  34. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_group'
  35. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Cart_sub'
  36. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_split'
  37. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Send'
  38. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Allreduce'
  39. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_packed'
  40. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_max'
  41. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_maxloc'
  42. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_min'
  43. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Rsend'
  44. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_byte'
  45. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Irecv'
  46. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_contiguous'
  47. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Recv'
  48. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_free'
  49. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_comm_world'
  50. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Address'
  51. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_compare'
  52. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_float'
  53. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Reduce'
  54. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Pack'
  55. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_request_null'
  56. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_cplex'
  57. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_unsigned_short'
  58. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_c2f'
  59. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Gatherv'
  60. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Wait'
  61. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Allgather'
  62. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_double_int'
  63. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Op_create'
  64. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_int'
  65. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Pack_size'
  66. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_long_long_int'
  67. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Unpack'
  68. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_integer'
  69. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Test'
  70. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_dblprec'
  71. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Isend'
  72. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_f2c'
  73. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Op_f2c'
  74. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_ub'
  75. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_vector'
  76. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Alltoall'
  77. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Finalize'
  78. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Sendrecv'
  79. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_op_sum'
  80. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Op_c2f'
  81. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_size'
  82. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `ompi_mpi_real'
  83. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Group_free'
  84. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_indexed'
  85. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Barrier'
  86. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_commit'
  87. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Type_c2f'
  88. /home/pfg/intel/compilers_and_libraries_2019.3.199/linux/mkl/lib/intel64/libmkl_blacs_openmpi_lp64.so: undefined reference to `MPI_Comm_rank'
  89. collect2: error: ld returned 1 exit status
  90. make[1]: *** [Makefile:71: quip] Error 1
  91. make[1]: Leaving directory '/home/pfg/Apps/cp2k-8.2/tools/toolchain/build/QUIP-b4336484fb65b0e73211a8f920ae4361c7c353fd/build/linux_x86_64_gfortran'
  92. make: *** [Makefile:155: Programs] Error
复制代码



作者
Author:
喵星大佬    时间: 2021-9-5 16:37
hitvip 发表于 2021-9-5 10:07
非常感谢您的解答,如您所说,我去掉了那两个软件包,并且采用cent8自带的gcc 8.4.1 来编译,但是我现在 ...

不用mkl就好了。。。。
作者
Author:
hitvip    时间: 2021-9-7 08:16
喵星大佬 发表于 2021-9-5 16:37
不用mkl就好了。。。。

按照您的建议。使用了 --with-mkl=no后果然好用。非常感谢!
作者
Author:
learnerNONE    时间: 2021-9-10 22:09
hitvip 发表于 2021-9-5 10:07
非常感谢您的解答,如您所说,我去掉了那两个软件包,并且采用cent8自带的gcc 8.4.1 来编译,但是我现在 ...

我也遇到了QUIP安装MPI的问题,并在github上获得了解答:
You can try modifying scripts/install_quip.sh to link the correct libraries:
In line 98 of scripts/install_quip.sh replace
'$(resolve_string "${MATH_LIBS}")'
with
'-L"${MKLROOT}/lib/intel64 -lmkl_gf_lp64 -lmkl_sequential -lmkl_core -lpthread -lm -ldl"'

注意至少在cp2k8.2里install_quip.sh换了位置,在scripts/stage6,或者自己用find ./ -name 搜索。
更改之后,我的quip完美编译,祝你好运
作者
Author:
bajia    时间: 2021-9-11 13:13
非常感谢老师分享,我按照这个方法可以编译完成,test也都是通过的,没有报错,不过我在进行cell_opt的时候只能进行一个SCF,之后即不停止,out文件也没有更新,就很郁闷,老师有遇到过这样的状况吗
作者
Author:
ChemG    时间: 2021-9-11 16:51
bajia 发表于 2021-9-11 13:13
非常感谢老师分享,我按照这个方法可以编译完成,test也都是通过的,没有报错,不过我在进行cell_opt的时候 ...

这个我也遇到了,你用的应该使用的popt或者psmp结合export OMP_NUM_THREADS=1吧。我自己尝试换用编译出的ssmp或者psmp结合export OMP_NUM_THREADS=2,同时mpirun -np时核数减半可以正常了。但是具体原因不清楚
作者
Author:
hitvip    时间: 2021-9-11 18:20
learnerNONE 发表于 2021-9-10 22:09
我也遇到了QUIP安装MPI的问题,并在github上获得了解答:
You can try modifying scripts/install_quip. ...

非常感谢您的回答,这个问题困扰了我好久了,太谢谢啦,我把所有的分给您
作者
Author:
learnerNONE    时间: 2021-9-11 20:48
hitvip 发表于 2021-9-11 18:20
非常感谢您的回答,这个问题困扰了我好久了,太谢谢啦,我把所有的分给您

客气了
作者
Author:
普朗克的薛定谔    时间: 2021-9-12 10:05
这是在安装的时候使用的编译器吗
作者
Author:
雷志杰    时间: 2021-9-12 10:12

作者
Author:
普朗克的薛定谔    时间: 2021-9-12 10:42
赞了!
作者
Author:
bajia    时间: 2021-9-12 12:26
ChemG 发表于 2021-9-11 16:51
这个我也遇到了,你用的应该使用的popt或者psmp结合export OMP_NUM_THREADS=1吧。我自己尝试换用编译出的 ...

就很郁闷,我是只能用两个核,真的是无语了
作者
Author:
叶子之旅    时间: 2021-10-13 08:58
abin 发表于 2021-3-20 20:08
看大家编译过程,
好折腾呀。

请问下王老师,我之前在本地和singularity上成功编译了CP2K,现在想试试docker,遇到点问题。我在toolchain目录下运行"docker build cp2k/toolchain ."后输出以下内容:
Done!
Now copy:
  cp /opt/cp2k-toolchain/install/arch/* to the cp2k/arch/ directory
To use the installed tools and libraries and cp2k version
compiled with it you will first need to execute at the prompt:
  source /opt/cp2k-toolchain/install/setup
To build CP2K you should change directory:
  cd cp2k/
  make -j 48 ARCH=local VERSION="ssmp sdbg psmp pdbg"

arch files for GPU enabled CUDA versions are named "local_cuda.*"
arch files for coverage versions are named "local_coverage.*"

Note that these pre-built arch files are for the GNU compiler, users have to adapt them for other compilers.
It is possible to use the provided CP2K arch files as guidance.
Removing intermediate container a79becc429fb
---> ba5e84dea122
Successfully built ba5e84dea122
Successfully tagged cp2k/toolchain:latest

按照提示应该是还要编译CP2K本体吧?我尝试docker container run -it cp2k/toolchain bash进入容器后,发现无法按照以上提示进行make编译操作,因为会报错。查看后发现相对于源代码包里的完整文件,容器内少了很多文件,难道是要把完整的源代码文件复制到容器里进行编译?还是需要docker其他的Dockerfile呢(我看到CP2K源代码包里有很多其他的Dockerfile)?麻烦老师给个思路,谢谢~


作者
Author:
abin    时间: 2021-10-13 11:49
叶子之旅 发表于 2021-10-13 08:58
请问下王老师,我之前在本地和singularity上成功编译了CP2K,现在想试试docker,遇到点问题 ...

看docker 手册呀……
作者
Author:
Mentary    时间: 2021-11-28 15:14
archer 发表于 2020-9-17 18:30
make出现错误,请问您知道如何解决吗?
cp2k-7.1/Makefile:134: recipe for target 'all' failed
make[2] ...

请问您的问题解决了吗,我也遇到了这样的问题
作者
Author:
archer    时间: 2021-12-1 12:27
Mentary 发表于 2021-11-28 15:14
请问您的问题解决了吗,我也遇到了这样的问题

抱歉,我也没有解决
作者
Author:
Mentary    时间: 2021-12-1 14:26
archer 发表于 2021-12-1 12:27
抱歉,我也没有解决

好的,感谢您的回复
作者
Author:
莫落    时间: 2021-12-24 12:30
为什么我都测试通过了,结尾了给我来个了报错?
作者
Author:
beyond    时间: 2022-3-10 19:45
haibeih 发表于 2020-9-10 20:29
借个楼提醒一下,gcc版本最重要,特别注意用这种方法编译cp2k时,需要python也是用官网推荐的gcc版本编译 ...

我正在一个cluster上面编译cp2k 9.1,  用系统自带的gcc 10.1, libint出错, 选择安装,cp2k 自带脚本安装gcc 11.2, libxc出错, 把脚本里面的gcc 11.2 改为 9.3,gcc_sha256 码不匹配
作者
Author:
lr8616    时间: 2023-2-28 12:35
请问elpa编译报错没有通过,按楼主说的添加了两行内容之后还是报错,config.log文件里看到有这样的几行:

configure:4289: /home/gauss/openmpi411/bin/mpic++ -V >&5
g++: error: unrecognized command line option '-V'
g++: fatal error: no input files
compilation terminated.

不知道是什么原因?还请大家指点~已上传config.log文件,谢谢!
作者
Author:
Janson_Shi    时间: 2023-5-22 19:01
lr8616 发表于 2023-2-28 12:35
请问elpa编译报错没有通过,按楼主说的添加了两行内容之后还是报错,config.log文件里看到有这样的几行:
...

请问你解决了吗?
作者
Author:
lr8616    时间: 2023-5-26 12:04
Janson_Shi 发表于 2023-5-22 19:01
请问你解决了吗?

额。。自己还是没搞定,最后闲鱼200块钱。。。。
作者
Author:
Janson_Shi    时间: 2023-5-26 13:06
lr8616 发表于 2023-5-26 12:04
额。。自己还是没搞定,最后闲鱼200块钱。。。。

我也是
作者
Author:
a18236822855    时间: 2023-8-21 15:04
请问各位老师有没有遇到过在“ Getting proc arch info using OpenBLAS tools”卡住的情况(在这个界面卡了几个小时
作者
Author:
1764360701    时间: 2023-12-19 15:28
第二步出现了这种问题





欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3