我尝试通过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”,错误文件为空。 为什么我的文件“未送达”?
答案 0 :(得分:1)
输出日志和错误日志文件保存在假脱机目录中的执行节点上,并在作业完成后复制回头节点。假脱机目录的位置可能会有所不同。但你应该寻找它 下 <{1}}位于已分配作业的节点列表的第一个节点上。
有多种原因导致扭矩无法传递输出文件。
此列表并非完整。已经在Stack Overflow上可以找到许多处理这种故障的问题。尝试检查以上任何一种情况是否适用于您的情况。
答案 1 :(得分:0)
您(或其他发现此线程的人)也应查看此处给出的解决方案: PBS, refresh stdout
如果您拥有管理员权限,则可以设置
$spool_as_final_name true
这会使输出直接写到最终目标。