在运行时从slurm作业中获取stdout / stderr

时间:2017-06-09 17:18:22

标签: stdout slurm

我有一个批处理文件来发送sbatch的作业。 批处理文件的内容是

# Setting the proper SBATCH variables 
...
#SBATCH --error="test_slurm-%j.err"
#SBATCH --output="test_slurm-%j.out"
...

WORKDIR=.
echo "Run 1"
${WORKDIR}/test_slurm
echo "Run 2"
${WORKDIR}/test_slurm

文件test_slurm-%j.out有时仅在每行完成后附加输出。 例如,test_slurm的第一个实例的输出在test_slurm-%j.out完成之前不会被转储到test_slurm

有没有办法让stdout / stderr在运行时“刷新”,所以我可以检查文件test_slurm-%j.out来监控执行情况?

按照 How to change how frequently SLURM updates the output file (stdout)?https://unix.stackexchange.com/questions/25372/turn-off-buffering-in-pipe 我试过

stdbuf -oL -eL ${WORKDIR}/test_slurm
stdbuf -o0 -e0 ${WORKDIR}/test_slurm
stdbuf -o1 -e1 ${WORKDIR}/test_slurm
unbuffer ${WORKDIR}/test_slurm

这些都不起作用。

This似乎没有提供答案。

0 个答案:

没有答案