为什么Torque qsub不会创建输出文件?

时间:2017-10-15 19:26:21

标签: qsub torque supercomputers

我尝试通过Torque PBS使用命令

启动集群任务
qsub -o a.txt a.sh

文件a.sh包含单个字符串:

hostname

命令qsub后,我发出qstat命令,给出下一个输出:

Job ID                    Name             User            Time Use S Queue
------------------------- ---------------- --------------- -------- - -----
302937.voms               a.sh             user            00:00:00 E long

5秒后命令qstat返回空输出(队列中没有作业)。 命令

qsub --version

给出输出:版本:2.5.13

命令

which qsub

输出:/ usr / bin / qsub

问题是文件a.txt(来自命令qsub -o a.txt a.sh)未创建!在终端只返回作业ID,没有任何错误。命令

 qsub a.sh

具有相同的行为。我该怎么办呢? qsub日志文件在哪里有错误?

如果我使用命令

qsub -l nodes=node36:ppn=1 -o a.txt a.sh

然后输出我可以在文件夹

中找到的文件
/var/spool/pbs/undelivered
在node36上的

(在ssh登录之后)。 输出文件包含字符串“node36”,错误文件为空。 为什么我的文件“未送达”?

2 个答案:

答案 0 :(得分:1)

输出日志和错误日志文件保存在假脱机目录中的执行节点上,并在作业完成后复制回头节点。假脱机目录的位置可能会有所不同。但你应该寻找它 下 <{1}}位于已分配作业的节点列表的第一个节点上。

有多种原因导致扭矩无法传递输出文件。

  1. 提交作业的用户可能不存在于节点上,或者可能无法访问其主目录,或者群集节点之间存在用户ID不匹配。
  2. Torque正在使用ssh将文件复制到头节点,但是在所有节点上尚未一致地设置用户在群集中进行ssh的无密码公钥身份验证。
  3. 在执行作业期间节点失败。
  4. 此列表并非完整。已经在Stack Overflow上可以找到许多处理这种故障的问题。尝试检查以上任何一种情况是否适用于您的情况。

答案 1 :(得分:0)

您(或其他发现此线程的人)也应查看此处给出的解决方案: PBS, refresh stdout

如果您拥有管理员权限,则可以设置

$spool_as_final_name true

这会使输出直接写到最终目标。