计算化学公社

标题: Linux版本ORCA串行运算没问题,并行运算出错 [打印本页]

作者
Author:
594yy    时间: 2025-9-23 11:10
标题: Linux版本ORCA串行运算没问题,并行运算出错
本帖最后由 594yy 于 2025-9-23 13:27 编辑

本人在Linux的集群上采用ORCA软件进行单点能计算,把计算核心数设置为1时候,运算可以正常结束,但是把核心数设置为大于等于2时,出现以下截图报错,请教各位这是什么问题?附件中是本人输入文件及输出的报错文件。
本人已经尝试过的做法:1、.bashrc里面已经添加过路径;2、输入mpirun -version命令后显示的是mpirun (Open MPI) 4.1.6,与本人安装的ORCA需求的openmpi版本一致;3、输入文件在windows版本的ORCA中已经测试过,没有问题。

作者
Author:
abin    时间: 2025-9-23 11:34
Try to configure all the openmpi settings in your script, not in .bashrc file.

作者
Author:
zjxitcc    时间: 2025-9-23 12:29
(1)输入文件显示的是DLPNO-CCSD(T)单点计算,不应称为“分子结构优化计算”。单点、结构优化、频率分析、IRC等常见任务名不能混用。
(2)把这一行
/XYFS01/pxy5/yy/gaussian/orca/orca_6_0_1_linux_x86-64_shared_openmpi416/orca HNC.inp > HNC.out
修改为如下4行
which mpirun
whereis mpirun
mpirun --version
/XYFS01/pxy5/yy/gaussian/orca/orca_6_0_1_linux_x86-64_shared_openmpi416/orca HNC.inp >HNC.out 2>&1
这样提交后还是会报错,然后上传最新的输出文件(输入文件不要修改,不然输入/输出不一一对应了),便于大家看报错信息。
(3)把你~/.bashrc文件中的openmpi环境变量展示一下,让大家看看有没写错/写得不合理
作者
Author:
594yy    时间: 2025-9-23 13:27
zjxitcc 发表于 2025-9-23 12:29
(1)输入文件显示的是DLPNO-CCSD(T)单点计算,不应称为“分子结构优化计算”。单点、结构优化、频率分析、 ...

(1)感谢指出,已修改内容。
(2)我把文件相关内容修改了,但依旧报错,报错输出文件在附件中。
(3)~/.bashrc文件中关于openmpi环境变量为:
export PATH=$PATH:/XYFS01/pxy5/yy/gaussian/orca/orca_6_0_1_linux_x86-64_shared_openmpi416
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/XYFS01/pxy5/yy/gaussian/orca/orca_6_0_1_linux_x86-64_shared_openmpi416
alias orca='/XYFS01/pxy5/yy/gaussian/orca/orca_6_0_1_linux_x86-64_shared_openmpi416/orca'

(4)另外,我发现如果不用脚本提交任务,直接在命令框输入orca HNC.inp > HNC.out,输出结果正常,但是在执行过程中会出现如下警告信息:

WARNING: There was an error initializing an OpenFabrics device.

  Local host:   ln241
  Local device: mlx5_2
--------------------------------------------------------------------------
[ln241:2808497] 3 more processes have sent help message help-mpi-btl-openib.txt / error in device init
[ln241:2808497] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages


作者
Author:
zjxitcc    时间: 2025-9-23 13:49
本帖最后由 zjxitcc 于 2025-9-23 13:53 编辑
594yy 发表于 2025-9-23 13:27
(1)感谢指出,已修改内容。
(2)我把文件相关内容修改了,但依旧报错,报错输出文件在附件中。
(3 ...

其中两行改成
export PATH=/XYFS01/pxy5/yy/gaussian/orca/orca_6_0_1_linux_x86-64_shared_openmpi416:$PATH
export LD_LIBRARY_PATH=/XYFS01/pxy5/yy/gaussian/orca/orca_6_0_1_linux_x86-64_shared_openmpi416:$LD_LIBRARY_PATH
应该就没问题了。

注意,这只能解决你ORCA的mpirun问题,若你机子上有多个版本mpirun共存(例如VASP和CP2K用了另一个版本的mpirun),则需进行版本管理,上述修改会破坏VASP和CP2K默认使用的mpirun。同一台机子,不同时刻使用不同版本mpi,粗糙的办法是将mpi环境变量写进提交任务的脚本,每次激活需要使用的版本;优雅的办法是使用modulefile管理不同版本程序,每次对需要的程序进行module load。你需要明白这其中的道理和优缺点,不然过两天可能又要发帖“为什么我的CP2K/VASP跑不了,报mpi错误”
作者
Author:
594yy    时间: 2025-9-23 20:49
zjxitcc 发表于 2025-9-23 13:49
其中两行改成
export PATH=/XYFS01/pxy5/yy/gaussian/orca/orca_6_0_1_linux_x86-64_shared_openmpi416: ...

十分感谢,成功解决了




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