计算化学公社

 找回密码 Forget password
 注册 Register
Views: 244|回复 Reply: 1
打印 Print 上一主题 Last thread 下一主题 Next thread

[ORCA] ORCA计算IRC时疑似内存调用出错

[复制链接 Copy URL]

2

帖子

0

威望

41

eV
积分
43

Level 2 能力者

跳转到指定楼层 Go to specific reply
楼主
求助!ORCA版本6.1.0,OpenMPI 4.1.8,MacOS 15.6.1。在计算IRC时得到以下的错误信息:

## A system call failed during shared memory initialization that should
not have.  It is likely that your MPI job will now either abort or
experience performance degradation.
 
  Local host:  YuhangdeMacBook-Pro.local
  System call: unlink(2) /var/folders/sj/6pnb_30n0155cbzdtz6d7jg00000gn/T//ompi.YuhangdeMacBook-Pro.501/pid.57532/1/vader_segment.YuhangdeMacBook-Pro.501.21ff0001.10
  Error:       No such file or directory (errno 2)
[YuhangdeMacBook-Pro.local:57532] 1 more process has sent help message help-opal-shmem-mmap.txt / sys call fail
[YuhangdeMacBook-Pro.local:57532] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages

这段信息在开始计算Forward时反复出现,导致没有进行任何一个点的IRC的结构计算,直到最后报错退出。当我进行其他的IRC任务时也会出现相同的错误。需要注意的是,我在进行其他类别的任务时(如普通的opt+freq)也会在terminal中发现这段报错信息,但是计算在持续进行没有报错退出,并且能得到正确的结果。目前为止只有IRC计算时会得到报错退出的结果。

我在禁用Vader后确实可以正常运行并得到正确的计算结果了,但是用任务管理器查看后台时发现后台的“系统”占用大幅提升至40%~50%,而“用户”占用降低(总占率,即为二者之和,依旧几乎为100%),而且这种现象可以在禁用Vader时复现在其他计算任务中。在禁用Vader前则是“用户”的占用永远在90%以上,“系统”占用几乎可以忽略不计。这是因为禁用Vader后“系统”因为分配内存的运算而提高了占用吗?这会影响计算效率吗?

我该如何彻底解决这个问题呢?如果不禁用Vader的话该如何操作呢?谢谢大佬们的指教!

2

帖子

0

威望

41

eV
积分
43

Level 2 能力者

2#
 楼主 Author| 发表于 Post on 2025-10-15 21:39:17 | 只看该作者 Only view this author
已经解决了,在此讲解一下解决方案来帮助一下后来者。
原因是 macOS 默认临时目录(/var/folders/...)路径过长、残留文件竞争或权限问题,导致文件创建/删除不一致。这时候只要设置 TMPDIR 环境变量至 /tmp,把路径优化了就好了。

首先打开终端,编辑 shell 配置文件,vi ~/.zshrc,然后在里面添加export TMPDIR=/tmp,保存退出后source ~/.zshrc即可。
如果你成功了的话,echo $TMPDIR时会输出/tmp

从此再也没有发生过问题。

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-1-24 17:12 , Processed in 0.223878 second(s), 20 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list