如何配置IBM LSF的bsub作业处理SSUSP状态下的stdout输出?
IBM LSF作业SSUSP状态下标准输出(stdout)处理配置方案
LSSF默认会在作业从SSUSP状态恢复重启时,以追加模式写入stdout文件。你可以通过作业级配置或全局配置两种方式调整这一行为:
一、作业级配置(单作业生效)
通过包装脚本在作业重启时主动清空输出文件,无需修改全局配置:
- 编写启动脚本
job_wrapper.sh:
#!/bin/bash # LSF会为重启的作业设置LSB_JOB_RESTARTED环境变量 if [ "$LSB_JOB_RESTARTED" = "Y" ]; then # 清空指定的输出文件 > stdout.file fi # 执行原任务 myFunction ...
- 提交该脚本作为作业:
bsub -R 'span[hosts=1]' -N -o stdout.file ./job_wrapper.sh
二、全局配置(所有作业生效)
修改LSSF全局配置文件实现统一行为:
- 编辑
lsb.params配置文件,添加或修改参数:
RESTART_OUTPUT_MODE=OVERWRITE
- 重启LSF服务使配置生效:
badmin reconfig
该参数会让所有从SSUSP状态恢复重启的作业,自动覆盖原stdout文件,而非追加写入。
注意事项
- 全局配置会作用于集群内所有作业,若仅需调整特定作业,优先使用作业级脚本方案。
- 确保作业运行用户对stdout文件拥有读写权限,避免清空或写入操作失败。
内容的提问来源于stack exchange,提问作者JoeMG
相关产品推荐
相关产品推荐

