计算化学公社

标题: wsl中GROMACS与CP2K联合编译中fftw的问题 [打印本页]

作者
Author:
worldol    时间: 2022-12-3 20:16
标题: wsl中GROMACS与CP2K联合编译中fftw的问题
本帖最后由 worldol 于 2022-12-4 10:11 编辑

各位老师您好。我在进行有cuda加速的GROMACS和CP2K联合编译中,CP2K编译完成测试结果为全通过。进行GROMACS编译时,在cmake这一步,检查到fftw时提示Could not find fftwf_plan_many_[r2c|c2r],请问各位老师如何处理这个问题?电脑硬件为5600X和2080ti,系统为wsl2-ubuntu22.04,fftw版本3.3.8,GROMACS版本2022.4,CP2K版本2022.2。
作者
Author:
worldol    时间: 2022-12-3 20:20
GROMACS编译cmake指令如下
cmake .. -DCMAKE_INSTALL_PREFIX=/home/lzk/app/gmx_qmmm_gpu -DREGRESSIONTEST_DOWNLOAD=ON -DGMX_FFT_LIBRARY=fftw3 -DFFTWF_LIBRARY='/home/lzk/app/fftw-3.3.8/lib' -DFFTWF_INCLUDE_DIR=/home/lzk/app/fftw-3.3.8/include -DGMX_BLAS_USER=/home/lzk/app/cp2k-2022.2/tools/toolchain/install/openblas-0.3.20 -DGMX_LAPACK_USER=/home/lzk/app/cp2k-2022.2/tools/toolchain/install/scalapack-2.1.0 -DBUILD_SHARED_LIBS=OFF -DGMXAPI=OFF -DGMX_INSTALL_NBLIB_API=OFF -DGMX_CP2K=ON -DCP2K_DIR=/home/lzk/app/cp2k-2022.2/lib/local/psmp -DCP2K_LINKER_FLAGS="-Wl,--enable-new-dtags -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/openmpi-4.1.1/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/openmpi-4.1.1/lib'  -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/openblas-0.3.20/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/openblas-0.3.20/lib' -L'/home/lzk/app/fftw3.3.8/lib' -Wl,-rpath='/home/lzk/app/fftw3.3.8/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libint-v2.6.0-cp2k-lmax-6/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libxc-5.2.3/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libxc-5.2.3/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libxsmm-1.17/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libxsmm-1.17/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/scalapack-2.1.0/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/scalapack-2.1.0/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/COSMA-2.5.1/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/COSMA-2.5.1/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/gsl-2.7/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/gsl-2.7/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/plumed-2.8.0/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/plumed-2.8.0/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/hdf5-1.12.0/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/hdf5-1.12.0/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libvdwxc-0.4.0/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libvdwxc-0.4.0/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/spglib-1.16.2/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/spglib-1.16.2/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libvori-220621/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/libvori-220621/lib' -L'/home/lzk/app/cp2k-2022.2/tools/toolchain/install/SpFFT-1.0.6/lib' -Wl,-rpath='/home/lzk/app/cp2k-2022.2/tools/toolchain/install/SpFFT-1.0.6/lib' -lspfft -lsymspg -lvdwxc -lhdf5 -lhdf5_hl -lz -lplumed -ldl -lstdc++ -lz -ldl -lgsl -lcosma_prefixed_pxgemm -lcosma -lcosta  -lscalapack -lxsmmf -lxsmm -ldl -lpthread -lxcf03 -lxc -lint2 -lfftw3_mpi -lfftw3 -lfftw3_omp    -lopenblas -lvori -lstdc++ -lstdc++" -DGMX_GPU=CUDA -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-11.8
作者
Author:
Daniel_Arndt    时间: 2022-12-4 11:44
我只是好奇,“-lfftw3_mpi”这个flag是干嘛的?gromacs的手册 https://manual.gromacs.org/current/install-guide/index.html 上说“There is no need to compile FFTW with threading or MPI support, but it does no harm.”。还有个小问题,我看见了“-lplumed”这个flag。我一般编译gromacs patched by plumed之前,都会先编译一遍没有plumed的gromacs。

我没有在编译gromacs时做过“-DGMX_CP2K=ON”。但我想到的第一个问题是 /home/lzk/app/fftw-3.3.8/ 是不是你自己编译的?如果是这样的话,你最好把自己编译fftw时用的命令写出来。
作者
Author:
worldol    时间: 2022-12-4 17:04
Daniel_Arndt 发表于 2022-12-4 11:44
我只是好奇,“-lfftw3_mpi”这个flag是干嘛的?gromacs的手册 https://manual.gromacs.org/current/instal ...

-lfftw3_mpi这个是从cp2k的local.psmp文件中复制过来的。-lplumed也是。
fftw的编译命令是这个:
./configure --prefix=/home/lzk/app/fftw3.3.8 --enable-shared --enable-static --enable-sse2 --enable-avx --enable-avx2 --enable-fma --enable-mpi --enable-threads --enable-openmp
make
make install
make clean
./configure --prefix=/home/lzk/app/fftw3.3.8 --enable-shared --enable-static --enable-float --enable-sse --enable-sse2 --enable-avx --enable-avx2 --enable-fma --enable-mpi --enable-threads --enable-openmp
make  
make install
作者
Author:
worldol    时间: 2022-12-8 16:18
有老师遇到过这样的问题吗?
作者
Author:
Rui_Zhai    时间: 2023-6-15 00:19
Hello. 请问你最后成功解决这个问题了吗
作者
Author:
qczgzly    时间: 2023-11-26 21:30
如果cp2k是用toolchain方式安装的,cp2k在编译fftw时没有添加--enable-float选项,意味着安装了双精度版本。因此在编译gromacs时如果添加-DGMX_DOULBE=ON选项,fftw这一步就能通过了。
不过,我后面紧接着遇到了blas和lapack相关的问题,提示
GMX_BLAS_USER library
  …/cp2k-2023.2/install/openblas-0.3.23/lib was specified,
  but it may not provide BLAS.




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