计算化学公社

标题: INCAR文件中设置NPAR参数不生效是什么原因? [打印本页]

作者
Author:
1194875530    时间: yesterday 15:57
标题: INCAR文件中设置NPAR参数不生效是什么原因?
各位老师好,本人刚接触VASP软件,在学习过程中遇到了如下问题,希望各位老师指点一二。
本人要计算一个Mn3O4的表面结构,由于计算过程缓慢,所以在测试KPAR和NPAR关键词以提高计算效率,通过查阅资料得知1、KPAR代表一个节点上并行的K点数;2、NPAR代表一个K点上并行的电子能带数。我们的服务器的一个cpu节点是64核,我在INCAR文件中输入KPAR=2,NPAR=2,是否代表一个电子能带应该在16个cpu核心上运行?但是我的OUTCAR文件中输出的却是

vasp.6.3.2 27Jun22 (build Dec 01 2023 14:42:26) complex                        
executed on             LinuxIFC date 2026.03.11  15:44:38
running   64 mpi-ranks, with   64 threads/rank
distrk:  each k-point on   32 cores,    2 groups
distr:  one band on NCORE=   1 cores,   32 groups
其中一个电子能带在仅一个核心上运行,且本人多次修改KPAR和NPAR参数进行测试,包括更换其他简单的体系,输出结果皆是一个电子能带仅在一个cpu核心运行,看上去是NPAR参数未生效。但是我同一个课题组的师兄在他的账号下用同样的输入文件进行测试,却可以正常运行,其输出结果如图1所示,且计算速度明显提升多倍。注:1、使用vasp版本一致;2、集群配置的环境一致;3、提交脚本一致。本人不知道是什么原因导致的,希望各位老师可以指点迷津。 (, 下载次数 Times of downloads: 1) (, 下载次数 Times of downloads: 0) (, 下载次数 Times of downloads: 0) (, 下载次数 Times of downloads: 0) (, 下载次数 Times of downloads: 0)

作者
Author:
山里面的和尚    时间: 1 hour ago
从log文件来看,现在用的VASP是基于MPI+OpenMP混合并行模式编译的,建议关注“mpirun -np 核数 -genv OMP_NUM_THREADS = 线程”,这里的线程因素,它对调控核数和线程同样起着决定性的作用。如果我没推测错,下面图片上mpirun -np 64 -genv OMP_NUM_THREADS = 1,你提交的脚本里面是mpirun -np 64 -genv OMP_NUM_THREADS = 64
作者
Author:
1194875530    时间: 15 min ago
山里面的和尚 发表于 2026-3-12 09:28
从log文件来看,现在用的VASP是基于MPI+OpenMP混合并行模式编译的,建议关注“mpirun -np 核数 -genv OMP_N ...

是的,您说的没错,我已经找到该问题了并且解决了,非常感谢您。




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