计算化学公社

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

[并行运算] orca5.0.0并行计算中诡异的Unable to open file问题

[复制链接 Copy URL]

17

帖子

0

威望

587

eV
积分
604

Level 4 (黑子)

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 FUcreature 于 2021-7-24 14:17 编辑

前情提要
FU本来是Ubuntu+Slurm用户,但是因为各种原因要接触CentOS+Torque的环境,所以就上云开了个环境研究看看,因为许可的问题没敢把Gaussian传上去,所以安装了ORCA5.0.0和OpenMPI,一路测试到并行计算的时候遇到了排不掉的问题,故前来求助

问题环境
虚拟网络为192.168.1.0/24,放置了3台2核4G的服务器,系统均为CentOS 7 Minimal;其中.1是路由器,.2是管理节点(下称master),两台.3x的计算节点(下称worker01、worker02)
在root@master上生成了SSH密钥对,并将公钥分发到root@worker01、worker02,测试SSH无密码登陆正常
在master安装ypserv包、worker安装ypbind包并配置NIS服务;安装nfs-utils包并配置NFS服务,将master的/home /opt挂出,客户端通过写/etc/fstab挂载到对应位置
测试用户、家目录互通正常,参考 Torque6.1.1官方文档 进行编译安装(由于目前CentOS 7的hwloc版本已达到1.11,大于文档要求的1.9.1,故直接用yum安装)
在master安装pbs_server,然后将生成的package分发到worker进行pbs_mom的安装(因为没有互通/usr/local所以客户端也需要安装hwloc之类的包,service才能跑起来)

启动各种服务后,再按照 orca入门OpenMPI FAQ 编译安装了两者到/opt下,同时将PATH、LD_LIBRARY_PATH相关的脚本分发到所有节点的/etc/profile.d里
问题场景
首先用orca文档中提供的水分子输入文件进行了单核的运算,qsub脚本如下:

  1. #!/bin/bash
  2. #PBS -N water
  3. #PBS -l nodes=1:ppn=1
  4. #PBS -o water.o
  5. #PBE -e water.e

  6. echo Running in $HOSTNAME
  7. /opt/orca-5.0.0/orca /home/poi/water/water.inp > /home/poi/water/water.out
复制代码
到这里一切正常,可以在water.out里得到“****ORCA TERMINATED NORMALLY****”,water.o里看到运行作业的主机名;可一旦将输入文件换成并行运算的testjob.inp(抄自 http://sobereva.com/451
  1. ! BLYP def2-SVP noautostart miniprint pal4
  2. * xyz 0 1
  3. C                  0.00000000    0.00000000   -0.56221066
  4. H                  0.00000000   -0.92444767   -1.10110537
  5. H                 -0.00000000    0.92444767   -1.10110537
  6. O                  0.00000000    0.00000000    0.69618930
  7. *
复制代码
对应的qsub脚本:
  1. #!/bin/bash
  2. #PBS -N testjob
  3. #PBS -l nodes=2:ppn=2
  4. #PBS -o testjob.o
  5. #PBE -e testjob.e

  6. echo Running in $HOSTNAME
  7. /opt/orca-5.0.0/orca /home/poi/testjob/testjob.inp > /home/poi/testjob/testjob.out
复制代码
然后就爆炸了,根据.e文件的输出,排掉一个worker上缺少librdmacm包的问题之后,尚有一个问题解决不掉:
  1. [file orca_tools/qcmat1.cpp, line 1677, Process 2]: Unable to open file /home/poi/testjob/testjob.VAUXJ.tmp in TMatrix<T>::Store(const char *fname)!   <<<这里

  2. [file orca_tools/qcmat1.cpp, line 1677, Process 3]: Unable to open file /home/poi/testjob/testjob.VAUXJ.tmp in TMatrix<T>::Store(const char *fname)!   <<<这里

  3. --------------------------------------------------------------------------
  4. Primary job  terminated normally, but 1 process returned
  5. a non-zero exit code. Per user-direction, the job has been aborted.
  6. --------------------------------------------------------------------------
  7. --------------------------------------------------------------------------
  8. An MPI communication peer process has unexpectedly disconnected.  This
  9. usually indicates a failure in the peer process (e.g., a crash or
  10. otherwise exiting without calling MPI_FINALIZE first).

  11. Although this local MPI process will likely now behave unpredictably
  12. (it may even hang or crash), the root cause of this problem is the
  13. failure of the peer -- that is what you need to investigate.  For
  14. example, there may be a core file that you can examine.  More
  15. generally: such peer hangups are frequently caused by application bugs
  16. or other external events.

  17.   Local host: torque-centos-workers-4wmc
  18.   Local PID:  20709
  19.   Peer host:  torque-centos-workers-mg7p
  20. --------------------------------------------------------------------------
  21. [torque-centos-workers-4wmc:20705] PMIX ERROR: UNREACHABLE in file server/pmix_server.c at line 2198
  22. [torque-centos-workers-4wmc:20705] PMIX ERROR: UNREACHABLE in file server/pmix_server.c at line 2198
  23. --------------------------------------------------------------------------
  24. mpirun detected that one or more processes exited with non-zero status, thus causing
  25. the job to be terminated. The first process to do so was:

  26.   Process name: [[40750,1],2]
  27.   Exit code:    64
  28. --------------------------------------------------------------------------
  29. [torque-centos-workers-4wmc:20705] 1 more process has sent help message help-mpi-btl-tcp.txt / peer hung up
  30. [torque-centos-workers-4wmc:20705] Set MCA parameter "orte_base_help_aggregate" to 0 to see all help / error messages
  31. [file orca_tools/qcmsg.cpp, line 458]:
复制代码
它说“Unable to open file testjob.VAUXJ.tmp”,但诡异的是这个文件确实是存在的,文件的属主也是当前用户,不存在权限问题:
  1. [poi@torque-centos-masters-pl0s testjob]$ ls
  2. testjob.dummy.tmp  testjob.gbw    testjob.int.tmp  testjob.out           testjob.sh            testjob.S.tmp      testjob.V.tmp
  3. testjob.e33        testjob.H.tmp  testjob.K.tmp    testjob.PDAT.tmp      testjob.SHARKINP.tmp  testjob.T.tmp
  4. testjob.EIJ.tmp    testjob.inp    testjob.o        testjob_property.txt  testjob.SHARK.K.tmp   testjob.VAUXJ.tmp    <<< 这里
复制代码
目前FU在这里尬住了,没找到出路,诸君如有想法还请赐教



2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

2#
发表于 Post on 2021-7-24 12:43:03 | 只看该作者 Only view this author
测试采用的哪一个用户?

openmpi不是所有的用户均可使用的。

请先回复这个问题再排查。
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

17

帖子

0

威望

587

eV
积分
604

Level 4 (黑子)

3#
 楼主 Author| 发表于 Post on 2021-7-24 12:47:08 | 只看该作者 Only view this author
abin 发表于 2021-7-24 12:43
测试采用的哪一个用户?

openmpi不是所有的用户均可使用的。

如日志所见,是一个名为poi的普通用户,之前看资料有了解到root是不能运行openmpi的

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

4#
发表于 Post on 2021-7-24 13:42:12 | 只看该作者 Only view this author
这不是所谓诡异的bug。

ORCA手册有讲的。
NFS sync有性能短板。

可以查询关于orca多机器并行,本ID的相关回复。


另,没有IB网络就不要折腾ORCA多机器并行了。
没有现实意义。

多数云平台,又不是采用IB网做内部网络的。
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

17

帖子

0

威望

587

eV
积分
604

Level 4 (黑子)

5#
 楼主 Author| 发表于 Post on 2021-7-24 13:51:33 | 只看该作者 Only view this author
abin 发表于 2021-7-24 13:42
这不是所谓诡异的bug。

ORCA手册有讲的。

原来如此,感谢指教
本身只是测试环境遇到这个,担心是什么配置问题,既然是性能面的原因那就无需解决了

17

帖子

0

威望

587

eV
积分
604

Level 4 (黑子)

6#
 楼主 Author| 发表于 Post on 2021-7-24 14:42:25 | 只看该作者 Only view this author
做个总结:
https://www.orcasoftware.de/tutorials_orca/index.html <<< 这是orca的入门教程,内容量并不多
https://orcaforum.kofo.mpg.de/app.php/dlext/?cat=1   <<< 这才是orca手册正篇,在官网各版本orca下载页面的最下方,FU一开始没有注意到这本手册的存在
手册内的 5.2 Hints on the Use of Parallel ORCA 谈到NFS时说:
It is recommended to run orca in local (not nfs-mounted) scratch-directories, (for example /tmp1,
/usr/local, ...) and to renew these directories for each run to avoid confusion with left-overs of a previous
run.

也就是说推荐在本地文件系统(而非NFS上)的scratch目录里运行orca,并且每次运行时清理目录,以免受到前次运行的残留文件的影响
而本萜中出现的Unable to open file问题,则是NFS文件系统性能不足导致的次生问题

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

7#
发表于 Post on 2021-7-24 16:18:05 | 只看该作者 Only view this author
"同时将PATH、LD_LIBRARY_PATH相关的脚本分发到所有节点的/etc/profile.d里",
这种配置, 简直就是定时炸弹.


ORCA可以多机器并行,
我的集群上就可以多节点跑ORCA, 万兆以太网, 还算凑合吧. 三台或者更多机器并行, 没有什么意义.

ORCA, 相对而言, 内存控制并不是十分优秀(推测),
很多临时文件, 内存和硬盘都写, 还频繁读.
所以NFS是扛不住的.

对于有这种需求的软件,
当然是需要配置本地I/O, 术语就是local read and write.

祝好.
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

17

帖子

0

威望

587

eV
积分
604

Level 4 (黑子)

8#
 楼主 Author| 发表于 Post on 2021-7-24 16:44:31 | 只看该作者 Only view this author
abin 发表于 2021-7-24 16:18
"同时将PATH、LD_LIBRARY_PATH相关的脚本分发到所有节点的/etc/profile.d里",
这种配置, 简直就是定时炸 ...

感谢补充,请问具体而言用profile.d来分发配置的坏处是什么?
(Google了一下倒是发现LD_LIBRARY_PATH不应该通过profile.d,而是ld.so.conf.d来配置,但FU还没有完全理解这样做定时炸弹的方面表现在哪里,请指教)

2301

帖子

1

威望

5473

eV
积分
7794

Level 6 (一方通行)

9#
发表于 Post on 2021-7-24 17:40:04 | 只看该作者 Only view this author
FUcreature 发表于 2021-7-24 16:44
感谢补充,请问具体而言用profile.d来分发配置的坏处是什么?
(Google了一下倒是发现LD_LIBRARY_PATH不 ...

Linux非“一言堂”或者“中央集权”.

要么root做好配置, 让用户选择.
要么root啥也不做, 做好规划, 让用户自己来.

你是没见过, 有些蠢货, 系统设定优先级最高, 用户所有的设定都不生效的平台.

只是自己玩的话, 随便弄了.
High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

17

帖子

0

威望

587

eV
积分
604

Level 4 (黑子)

10#
 楼主 Author| 发表于 Post on 2021-7-24 18:31:07 | 只看该作者 Only view this author
abin 发表于 2021-7-24 17:40
Linux非“一言堂”或者“中央集权”.

要么root做好配置, 让用户选择.

了解了,谢谢

本版积分规则 Credits rule

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

GMT+8, 2024-11-23 15:35 , Processed in 0.164333 second(s), 21 queries , Gzip On.

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