PBS上的qsub没有给出输出

问题描述 投票:1回答:1

我正在尝试将python作业提交给PBS,并获得打印的内容作为输出。一个简单的例子是:

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

由于这项工作非常容易,我将立即使用qstat看到状态从Q变为E并变为C。然后问题来了,我看不到应该在/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,但它们都不起作用。那我该怎么做呢?

pbs qsub
1个回答
0
投票

我之前遇到过。

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

您可以这样检查:

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

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

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到您的计算节点。在我的情况下,因为我们的NFS驱动程序已安装/home目录,所以所有节点都共享相同的/home,我只需要

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

希望我的回答帮助。

© www.soinside.com 2019 - 2024. All rights reserved.