|
|
本帖最后由 白菜 于 2025-9-19 13:27 编辑
老师们好,我想在超算上用CP2K进行振动分析,验证结构优化是极小点,但是总是在SCF迭代前中止,想请老师们帮忙看看原因:
1. 集群每台计算节点配备:2颗Intel Xeon Gold 6142处理器(主频2.6 GHz,16核)、192 GB DDR4内存、240 GB 本地SSD硬盘。
设置了两个队列:score队列(串行作业和32 核以下的并行作业建议提交至score队列)、snode队列(使用32的倍数的核数的并行作业须提交到snode队列)。
2. 183个原子的MOF体系,a b c边长都是15埃左右。
(1)输入文件 .inp设NPROC_REP=1,psmp提交脚本.lsf设NP_PER_NODE=2 OMP_NUM_THREADS=2(测试一下),提交到score队列,能进入SCF迭代,迭代了四五轮SCF中止了。
猜测是内存爆了。
(2)下面用128核开始跑:
① NPROC_REP=4时,就是4个MPI进程对应1个副本,用popt版本、提交到snode队列,能正常运行。
NPROC_REP=8 时,用popt版本、提交到snode队列,能正常运行。
② NPROC_REP=1时,用psmp版本、提交到snode队列
设置NP_PER_NODE=4 OMP_NUM_THREADS=8 (每个节点4个进程,每个进程下8个线程)
或者NP_PER_NODE=8 OMP_NUM_THREADS=4
或者NP_PER_NODE=2 OMP_NUM_THREADS=16
或者NP_PER_NODE=1 OMP_NUM_THREADS=32,都在计算后两分钟左右中止:
a. 副本的out文件里没有报错,最多是打印了SCF迭代的表头,都没进入SCF迭代。
b. JOBID.out里是提示:
= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
= RANK 11 PID 181259 RUNNING AT b2032
= KILLED BY SIGNAL: 9 (Killed)
Cd_pri_s1_freq_PBEsolD3-r-0.out
(86.03 KB, 下载次数 Times of downloads: 1)
Cd_pri_s1_freq_PBEsolD3.out
(79.83 KB, 下载次数 Times of downloads: 0)
19194292.err
(836 Bytes, 下载次数 Times of downloads: 0)
19194292.out
(3.41 KB, 下载次数 Times of downloads: 0)
(3)我监控了(2)② 中NP_PER_NODE=1 OMP_NUM_THREADS=32时任务所在节点的内存使用量,前一分钟差不多是35%,然后调成58%,2秒后变成20%,任务就kill了。
还提交了只有8个原子的振动分析任务,jodid.out里的提示信息也是一样的。都没有进入SCF迭代。
(4)① 我怀疑是psmp版本提交脚本的问题,但是超算管理员检查了没问题。
② 内存不够的话,8个原子的振动分析任务也失败了,它的内存应该够。
NPROC_REP=4的popt版本 和 NPROC_REP=1时NP_PER_NODE=4 OMP_NUM_THREADS=8的psmp版本,都对应于96核算24个副本,前者可以,psmp更节约内存才对。
现在就是没法用psmp版本的cp2k,后面还要算1400多个原子的体系,用psmp版本效率高一些且内存少些。但是不知道怎么解决这个问题。
===================================================
又尝试了一些设置,作为补充,都是psmp版本,:
① 对前面的体系还是振动分析,128核:
NPROC_REP 4;
NP_PER_NODE=8 # MPI processes per node
OMP_NUM_THREADS=4 # OpenMP threads per MPI process
也是中止在SCF迭代前,JOBID.out里的提示如前,JOBID.err里的提示如下:
b2118.180274Unknown/unhandled packet type 0x4de1
b2118.180271Unknown/unhandled packet type 0x5b
forrtl: severe (174): SIGSEGV, segmentation fault occurred
forrtl: severe (174): SIGSEGV, segmentation fault occurred
--------------------------------------------------------------------------------------------------------
② 对尿素进行振动分析,32核,score队列,
NP_PER_NODE=8 # MPI processes per node
OMP_NUM_THREADS=4 # OpenMP threads per MPI process
也是中止在SCF迭代前,JOBID.out里的提示如前,JOBID.err里的提示如下:
b1845.209114Unknown/unhandled packet type 0x5321
b1845.209117Unknown/unhandled packet type 0x2f37
b1845.209118Unknown/unhandled packet type 0xcf33
b1845.209119Unknown/unhandled packet type 0x7433
forrtl: severe (154): array index out of bounds
Image PC Routine Line Source
cp2k.psmp 000000000CA926EB Unknown Unknown Unknown
libpthread-2.17.s 00002B2ED51386D0 Unknown Unknown Unknown
cp2k.psmp 0000000003B57BAB pw_methods_mp_pw_ 969 pw_methods.F
libiomp5.so 00002B2ED5786BB3 __kmp_invoke_micr Unknown Unknown
libiomp5.so 00002B2ED5702903 Unknown Unknown Unknown
libiomp5.so 00002B2ED5701912 Unknown Unknown Unknown
libiomp5.so 00002B2ED578783C Unknown Unknown Unknown
libpthread-2.17.s 00002B2ED5130E25 Unknown Unknown Unknown
libc-2.17.so 00002B2ED5B66BAD clone Unknown Unknown
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
cp2k.psmp 000000000CA926BA Unknown Unknown Unknown
libpthread-2.17.s 00002AC2760786D0 Unknown Unknown Unknown
libpsm2.so.2.1 00002AC34B9A0D6D Unknown Unknown Unknown
libpsm2.so.2.1 00002AC34B9A0C6F Unknown Unknown Unknown
libpsm2.so.2.1 00002AC34B9BE564 Unknown Unknown Unknown
libpsm2.so.2.1 00002AC34B9C21A8 Unknown Unknown Unknown
libpthread-2.17.s 00002AC276070E25 Unknown Unknown Unknown
libc-2.17.so 00002AC276AA6BAD clone Unknown Unknown
forrtl: severe (174): SIGSEGV, segmentation fault occurred
Image PC Routine Line Source
cp2k.psmp 000000000CA926BA Unknown Unknown Unknown
libpthread-2.17.s 00002B55637046D0 Unknown Unknown Unknown
libpsm2.so.2.1 00002B563902CD6D Unknown Unknown Unknown
libpsm2.so.2.1 00002B563902CC6F Unknown Unknown Unknown
libpsm2.so.2.1 00002B563904A564 Unknown Unknown Unknown
libpsm2.so.2.1 00002B563904E1A8 Unknown Unknown Unknown
libpthread-2.17.s 00002B55636FCE25 Unknown Unknown Unknown
libc-2.17.so 00002B5564132BAD clone Unknown Unknown
forrtl: severe (174): SIGSEGV, segmentation fault occurred
forrtl: severe (174): SIGSEGV, segmentation fault occurred
forrtl: severe (174): SIGSEGV, segmentation fault occurred
----------------------------------------------------------------------------------------------------------
③ 对Si晶胞计算单点能,64核,snode队列。
NP_PER_NODE=8 # MPI processes per node
OMP_NUM_THREADS=4 # OpenMP threads per MPI process
正常运行结束。
|
|