PBS上的qsub没有输出

时间:2017-07-28 04:03:05

标签: pbs qsub

我正在尝试向PBS提交python作业并将打印内容作为输出。一个简单的例子如下:

python文件test.py:

import time
print(time.time())

pbs提交文件job_test.pbs:

#!/bin/bash
#PBS -l nodes=2:ppn=8,walltime=8:00:00
#PBS -N test
#PBS -q gpu

module load anaconda/3 torque cuda80 cudnn

cd /path-to-the-test.py-program
python test.py

最后是qsub命令:

qsub job_test.pbs

由于工作非常简单,我会立即看到状态从Q到E再到C,使用qstat。然后问题是我没有看到输出文件应该在/path-to-the-test.py-program中。我尝试在PBS脚本中设置 #PBS -o /path-to-the-test.py-program/output.txt 并使用命令 qsub -o / path- to-the-test.py-program / output.txt job_test.pbs 但它们都不起作用。那我怎么能这样做呢?

1 个答案:

答案 0 :(得分:0)

我之前遇到过这个问题。

我不太确定您是如何解决此问题的,但是在这里,我的情况是节点之间没有免密码登录。

您可以这样检查:

  1. ssh到您的计算节点,如果您需要密码,那么造成问题的原因很可能与我的相同。

  2. 通常在root处检查系统日志(为/var/log/messages),并找到类似

  3. 的内容
Apr 10 14:52:19 node1 pbs_mom: LOG_ERROR::sys_copy, command '/usr/bin/scp -rpB /var/spool/torque/spool/242.master.OU user@master:/home/user/path/to/sample.pbs.o242' failed with status=1, giving up after 4 attempts

关键是scp的失败。

  1. 检查/var/spool/torque/spool/ ---输出文件应该在那里。

因此,如果您的情况与我的情况完全一样,则可以ssh-copy-id进入计算节点。就我而言,由于我们的目录/home装有NFS驱动程序,因此所有节点共享相同的/home,我只需要

ssh-keygen
ssh-copy-id -i ~/.ssh/id_rsa localhost

希望我的回答有帮助。