提交SLURM批处理文件后修改原文件是否会影响已提交作业?
关于SLURM批处理文件提交后的修改问题
提交后能否修改原批处理文件?
当然可以!提交作业只是把文件内容递交给SLURM调度系统,原文件的编辑权限完全在你手里,你随时可以修改、重命名甚至删除它,这不会干扰SLURM的作业管理流程。修改原文件会对已提交的作业产生影响吗?
完全不会!这里要划个重点:当你通过qsub FILENAME(注:SLURM的标准提交命令是sbatch FILENAME,可能你是习惯了PBS的命令语法?不过不管用哪种兼容命令)提交作业时,SLURM会立即读取并存储批处理文件的完整内容到自身的作业元数据系统中。后续作业在队列等待或运行时,都是基于这份存储的副本执行,不会再去访问你本地的原文件。哪怕你之后把原文件改得面目全非或者直接删除,已经提交的作业都会严格按照提交时的内容运行。
举个直观的例子:你提交的批处理文件里写着sleep 3600,提交后你把原文件改成echo "Hello World",已经在队列里的作业依然会执行3600秒的睡眠命令,不会变成输出字符串。
不过要额外提醒:如果你的批处理文件里引用了其他外部文件(比如自定义脚本、数据文件),修改那些外部文件是会影响作业的——因为作业执行时会实时读取这些外部文件的内容,但批处理文件本身的执行逻辑在提交时就已经固定下来了。
内容的提问来源于stack exchange,提问作者Richard
相关产品推荐
相关产品推荐

