2014-10-31 82 views
3

我正在向Sun Grid Engine提交作业(脚本)。这项工作是一个Python程序。运行可能需要几个小时,但它会定期写入stdout和stderr以通知我它的状态(例如完成多少次迭代等)。问题是SGE缓冲输出并且只在最后写入文件,这意味着我无法在屏幕上看到输出或实时拖放文件。工作结束后,我只能了解状态。有没有办法通过配置SGE(qsub等)来解决这个问题?SGE:如何实时查看输出

+1

尝试使用sys.stdout.write()和sys.stdout.flush()而不是print() – jgritty 2014-10-31 04:09:46

回答

0

不使用qsub,而是使用qrsh。

+0

如何将'qsub'更改为'qrsh'命令?目前,该命令如下所示:'qsub -V -b n -cwd -j y -S/usr/bin/python'。 'qrsh'似乎支持一组不同的命令。 – 2015-01-06 20:57:58

+0

我还没有直接尝试使用python等交互式调用。对于非交互式调用,它非常简单。例如:“qrsh -V -cwd -j y pwd && hostname”。对于交互式呼叫,您可以分两步进行。首先调用“qrsh”将会把你登录到一个工作节点。然后调用“python”。 – 2015-01-06 22:22:43