SLURM 依赖于不存在的作业 ID
SLURM dependency on nonexistent job ID
提交带有 sbatch --dependency=afterok:$dependencylist
的作业应该使当前提交等到 ID 为 $dependencylist
的作业以退出代码 0
结束。如果 $dependencylist
中的部分或全部 ID 不是有效的职位 ID 或从未提交过,会发生什么情况? SLURM 会识别它并开始作业吗?
或者,我如何向 sbatch
提供空参数?我尝试了 sbatch --dependency=afterok:""
,但 SLURM 抱怨 sbatch: error: Batch job submission failed: Job dependency problem
。我想保留 --dependency
选项的原因是我正在编写一个更通用的脚本,有时我会有一些依赖关系,有时我不会。
What happens if some or all IDs in $dependencylist are not valid job IDs or have never been submitted?
从使用 Slurm 20.02.7 进行的测试来看,作业 ID 似乎在 slurmctld
中未知(要么尚未提交,要么作业的时间早于配置为 MinJobAge
), 该选项被静默忽略。 scontrol show job
然后说 Dependency=(null)
。这不会在之后改变,即使出现具有该 ID 的工作。
Alternatively, how can I provide empty arguments to sbatch?
当不需要依赖项时,您可以通过使用“0”作为作业 ID 来利用上述行为。
提交带有 sbatch --dependency=afterok:$dependencylist
的作业应该使当前提交等到 ID 为 $dependencylist
的作业以退出代码 0
结束。如果 $dependencylist
中的部分或全部 ID 不是有效的职位 ID 或从未提交过,会发生什么情况? SLURM 会识别它并开始作业吗?
或者,我如何向 sbatch
提供空参数?我尝试了 sbatch --dependency=afterok:""
,但 SLURM 抱怨 sbatch: error: Batch job submission failed: Job dependency problem
。我想保留 --dependency
选项的原因是我正在编写一个更通用的脚本,有时我会有一些依赖关系,有时我不会。
What happens if some or all IDs in $dependencylist are not valid job IDs or have never been submitted?
从使用 Slurm 20.02.7 进行的测试来看,作业 ID 似乎在 slurmctld
中未知(要么尚未提交,要么作业的时间早于配置为 MinJobAge
), 该选项被静默忽略。 scontrol show job
然后说 Dependency=(null)
。这不会在之后改变,即使出现具有该 ID 的工作。
Alternatively, how can I provide empty arguments to sbatch?
当不需要依赖项时,您可以通过使用“0”作为作业 ID 来利用上述行为。