计算化学公社

标题: 求助:PBS提交VASP效率异常变低 [打印本页]

作者
Author:
含光君    时间: 2022-11-1 12:36
标题: 求助:PBS提交VASP效率异常变低
本帖最后由 含光君 于 2022-11-1 12:45 编辑

各位老师好:
最近我在编译VASP 6.3.0+vaspsol+VTST完毕后,运行make test可正常结束。vaspsol与VTST功能均可正常实现。但实际使用时发现,若使用PBS提交任务(调用56核),计算效率奇慢无比,大概几十分钟一个电子步。而用 mpirun -np 56 vasp_std 在终端提交时,计算效率又很正常。(注:使用的机器为56核,超线程开启)

PBS提交脚本:
  1. #!/bin/sh
  2. #ulimit -s unlimited
  3. #PBS -l nodes=1:ppn=56

  4. source /opt/intel/oneapi/setvars.sh

  5. cd $PBS_O_WORKDIR

  6. mpirun -np 56 vasp_std > run.log
复制代码


分别用top查看两种不同方式提交任务后的进程信息,发现使用队列提交时,56个进程cpu使用率超过了100%,但总cpu占用率却不到50%。而mpirun命令行提交则进程负载较为正常。如图:

qsub提交:
(, 下载次数 Times of downloads: 13)


mpirun提交:
(, 下载次数 Times of downloads: 12)

重新编译了不带vaspsol和VTST的版本后此问题依然不能消除,并且队列系统提交其他程序的任务也无异常。因此可能是编译VASP本身过程中存在一定问题,编译过程参考了sob老师写的《VASP最简单的安装方法》博文(http://sobereva.com/455),但排查了几天没有头绪,请各位老师指点!

附件为本人编译的过程笔记: (, 下载次数 Times of downloads: 13)


作者
Author:
万里云    时间: 2022-11-1 15:06
这种每个进程CPU占用超过100%的,一般是编译时开了OpenMP,又没有正确设置线程数。

在脚本里把OMP_NUM_THREADS和MKL_NUM_THREADS设置成1试试。
作者
Author:
含光君    时间: 2022-11-1 15:40
万里云 发表于 2022-11-1 15:06
这种每个进程CPU占用超过100%的,一般是编译时开了OpenMP,又没有正确设置线程数。

在脚本里把OMP_NUM_T ...

谢谢解答!我去尝试一下!
作者
Author:
abin    时间: 2022-11-1 16:12
又是一个超线程受害者。
要么合理配置调度器,
要么关闭超线程。
作者
Author:
含光君    时间: 2022-11-1 21:57
2楼正解!




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