环境加载
module load mpi/openmpi/4.1.1-icc-oneapi2023.2-ch4
tool_chain相关库安装
cd tools/toolchain/
./install_cp2k_toolchain.sh --install-all --mpi-mode=openmpi --with-intel=/APP/u22/x86/intel/oneapi2023.2/compiler/2023.2.0/linux --with-mkl=/APP/u22/x86/intel/oneapi2023.2/mkl/2023.2.0 --with-openmpi=/APP/u22/x86/mpi/openmpi-4.1.1-icc-oneapi2023.2-ch4
报错elpa=>手动安装
cd build
wget https://elpa.mpcdf.mpg.de/software/tarball-archive/Releases/2024.03.001/elpa-2024.03.001.tar.gz
tar zxvf elpa-2024.03.001.tar.gz
--with-elpa=/GLOBALFS/nscc-gz_qmo2/cp2k/tools/toolchain/build/elpa-2024.03.001
报错scotch=>手动安装
cd build/scotch-6.0.0/src
vi libscotch/dgraph_halo.c 209/267行
MPI_Type_extent => MPI_Type_get_extent (attrglbtype, 0, &attrglbsiz)
vi libscotch/dmapping_io.c 255/254/260行
MPI_Address => MPI_Get_address
MPI_Type_hindexed => MPI_Type_create_hindexed
vi libscotch/library_dgraph_stat.c 271/272/277行
MPI_Address => MPI_Get_address
MPI_Type_struct => MPI_Type_create_struct
make ptscotch
报错
get_perm_c_parmetis.c(224): warning #266: function "ParMETIS_V3_NodeND" declared implicitly
ParMETIS_V3_NodeND(vtxdist_o, b_rowptr, b_colind
主要是因为parmetis这个库没有装,在toolchain/build路径执行
wget http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz
tar zxvf parmetis-4.0.3.tar.gz
cd parmetis-4.0.3
make config prefix=$(pwd)
make
make install
#成功后能看到在parmetis-4.0.3路径下有bin文件夹
cd ../pexsi_v1.2.0
vi src/get_perm_c_parmetis.c
#修改第24行为绝对路径parmetis.h的绝对路径
cd ../parmetis-4.0.3/include
vi parmetis.h
#修改18行为metis.h的绝对路径
安装cp2k
./install_cp2k_toolchain.sh --with-sirius=no --mpi-mode=openmpi --with-intel=/APP/u22/x86/intel/oneapi2023.2/compiler/2023.2.0/linux --with-mkl=/APP/u22/x86/intel/oneapi2023.2/mkl/2023.2.0 --with-openmpi=/APP/u22/x86/mpi/openmpi-4.1.1-icc-oneapi2023.2-ch4
cp install/arch/* ../../arch
source install/setup
cd ../..
make -j 16 ARCH=local VERSION="psmp"
···