mpd 守护进程提前结束作业

mpd 守护进程提前结束作业

我正在尝试配置 mpirun 和 mpiexec 以在 1 个节点、2 个处理器、12 核集群上运行名为 Materials Studio 的软件。提交方案为PBS。我已经正确设置了所有内容(在一些帮助下),并且我可以在其中提交作业并且它们可以正常工作,但几天后我遇到了问题,我会收到此类错误:

mpiexec_server.org:无法连接到本地 mpd (/tmp/mpd2.console_user);可能的原因: 1. 该主机上没有运行 mpd 2. mpd 正在运行,但在没有“控制台”的情况下启动(-n 选项)

似乎 mpd 的守护进程以某种方式设置但最终终止了。我很幸运地将这个(粗体部分)添加到我的提交脚本中:

export PATH=/data1/opt/MD/Linux-x86_64/IntelMPI/bin:$PATH

export LD_LIBRARY_PATH=/data1/opt/MD/Linux-x86_64/IntelMPI/lib:/data1/opt/MD/Linux-x86_64/IntelMPI/bin:/data1/opt/MD/Linux-x86_64/IntelMKL/lib

**mpdboot -n 1 -f ~/mpd.hosts**

nohup mpd &

/data1/opt/MD/Linux-x86_64/IntelMPI/bin/mpiexec -n 6 /data1/opt/MD/2.0/TaskServer/Tools/vasp5.3.3/Linux-x86_64/vasp_parallel

该作业现在已提交并正常运行,但在 30 分钟左右后超时。我尝试在 mpdboot 行末尾添加不带引号的“-r ssh”,但我不确定这是否是正确的策略。另外,我有点困惑为什么我需要在这个脚本中运行这个守护进程,以及为什么我需要在运行时调用主机文件 - 我认为 PBS 在作业开始时会创建该文件。有人可以给我一些关于下一步该去哪里的建议吗?基本上,如何防止正在运行的作业由于与 mpi 守护进程有关而退出。

编辑:任何人都可以阐明运行我在最后一行的 mpiexec 所涉及的内容吗?如果我正确链接到它所在的文件夹,我是否需要运行启动命令?我必须承认,我很困惑为什么我需要运行 mpdboot/mpd,而 mpiexec 的全部目的是消除对 mpd 的需要(至少根据 mpiexec 网站)。

答案1

我正在运行 MD 模拟。但是,一旦我想在 DL-POLY 中运行模拟,模拟就不会开始。我使用了这些命令:

$ ps aux | grep mpd 

$ nohup mpd > mpd.out 2> mpd.err < /dev/null/ &

$ mpiexec -n 4 DLPOLY.X >> job.out 2> job.err < /dev/null &

$ top

这样,当我使用最后一个命令查看进程时,我会看到 DL_POLY 没有出现。与此同时,使用ll命令我看到它的mpd.out值为零。我不知道为什么?

相关内容