本帖最后由 白菜 于 2025-9-21 08:18 编辑
老师们好,我想在超算上用psmp版CP2K进行振动分析,验证结构优化是极小点。现在psmp表现出的计算速度感觉有些不对劲儿,想请老师们帮忙看看:
1. 集群每台计算节点配备:2颗Intel Xeon Gold 6142处理器(主频2.6 GHz,16核)、192 GB DDR4内存、240 GB 本地SSD硬盘。
设置了两个队列:score队列(串行作业和32 核以下的并行作业建议提交至score队列)、snode队列(使用32的倍数的核数的并行作业须提交到snode队列)。
魔方-III集群计算和登录节点安装的操作系统为:CentOS Linux release 7.5(64位)。
集群采用的作业管理系统为:Platform LSF 10.1。
2. cp2k-2024.1-psmp.lsf提交脚本是结合超算管理员给的popt版提交脚本、集群手册和Gemini提示写的:
- #!/bin/bash
- #BSUB -J cp2k_psmp_test
- #BSUB -q snode
- #BSUB -n 128
- #BSUB -R "span[ptile=32]"
- #BSUB -o %J.out
- #BSUB -e %J.err
- ulimit -s unlimited
- export I_MPI_THREAD_SPLIT=1
- export OMP_STACKSIZE=4G
- #ENV
- . /public/home/users/zkchu/compiler/oneapi-2022.1/setvars.sh
- . /public/software/profile.d/compiler_gnu-7.2.0.sh
- export CP2K_DATA_DIR=${HOME}/cp2k-2024.1/data
- # Parallel settings
- export NP_PER_NODE=8
- export OMP_NUM_THREADS=4
- CURDIR=$PWD
- # Generate nodelist for mpirun
- rm -f $CURDIR/nodelist* >& /dev/null
- echo $LSB_MCPU_HOSTS | tr "\ " "\n" | sed -n 'p;N' | sort > $CURDIR/nodelist.tmp
- for j in `cat $CURDIR/nodelist.tmp`
- do
- for k in `seq 1 $NP_PER_NODE`
- do
- echo $j >> $CURDIR/nodelist
- done
- done
- NP=`cat $CURDIR/nodelist | wc -l`
- mpirun -np $NP -machinefile $CURDIR/nodelist $HOME/cp2k-2024.1/exe/Linux-intel-x86_64/cp2k.psmp -i test.inp -o test.out
复制代码
3.(1) 计算体系1(和体系2结构类似,作为参考):原胞a b c约为15埃的MOF(183原子),128核跑了19h完成振动分析。
cp2k版本 | | | | | | | | NP_PER_NODE=1 OMP_NUM_THREADS=32 STACKSIZE=4G | | | |
(2)计算体系2:原胞a b c约为8、9埃的MOF,扩为2*2*2超胞(488原子)。以下振动分析任务都是用128核跑的。序号 | | | | | | | | | | | = KILLED BY SIGNAL: 9 (Killed) | | | | | | | | | | | NP_PER_NODE=4 OMP_NUM_THREADS=8 STACKSIZE=512M | forrtl: severe (174): SIGSEGV, segmentation fault occurred | | | | NP_PER_NODE=2 OMP_NUM_THREADS=16 STACKSIZE=4G | = KILLED BY SIGNAL: 9 (Killed) | | | | NP_PER_NODE=2 OMP_NUM_THREADS=16 STACKSIZE=512M | | | | | | | NP_PER_NODE=1 OMP_NUM_THREADS=32 STACKSIZE=4G | | | |
① 对于E和F,CPU负载很低、SCF迭代耗时长且相差不多,这合理吗? ② 请问怎么设置参数或者调整提交脚本,可以充分发挥CPU资源、不爆内存,提高psmp版本的计算效率呢? (因为不太懂超算,总感觉自己写的提交脚本有点问题)
|