'--dependendy=aftercorr:已提交'slurm 选项无法识别

问题描述 投票:0回答:2

我有一个可以在 slurm 中运行的脚本。该脚本与 job-array aftercorr 一起使用,或者至少这是我想要它做的。基本上它运行第一个作业数组没有任何问题,但是,它无法识别命令--dependendy=aftercorr。我对 slurm 很陌生,你能帮我理解这个错误的原因吗?是否由于操作系统没有可用的命令而导致错误?或者我的脚本可能有错误?

下面是 bash 脚本的主线,然后是我收到的错误。

$ArrayAID=$(sbatch --array=1-5  Job_0.sh)
echo "Job-Array (script_0) id: ${ArrayAID}"

sbatch --array=1-5 --dependendy=aftercorr:$ArrayAID Job_1.sh

输出:

sbatch: unrecognized option '--dependendy=aftercorr:'
Try "sbatch --help" for more information

辛西娅

我尝试以交互模式运行它,并在 bash 中搜索 --help,但它并没有提供太多信息。我也想看看网上有什么,但我还是没有。

jobs slurm
2个回答
1
投票

您在帖子中始终将

--dependency
拼写为
--dependendy
。我假设这是一个仅出现在 StackOverflow 消息中的拼写错误。

输出

$ArrayAID=$(sbatch --array=1-5  Job_0.sh)

将是

ArrayAID
将包含
Submitted job XXXXX
,其中
XXXXX
是作业 ID,并且
$ArrayAID
将扩展为
Submitted
。因此,下一行将显示类似

sbatch --array=1-5 --dependendy=aftercorr:Submitted Job_1.sh

这是一个错误,因为 Slurm 需要的是作业 ID,而不是“已提交”一词。

--parsable
选项添加到第一个
sbatch call

$ArrayAID=$(sbatch --parsable --array=1-5  Job_0.sh)

使用该选项,

sbatch
将仅输出作业ID(以及集群名称(如果存在);在这种情况下,您将必须进一步调整该行)并且
ArrayAID
将包含预期的作业ID


0
投票

这是新行:

ArrayAID=$(sbatch --parsable --array=1-5  Job_0.sh)
echo "Job-Array. ID: ${ArrayAID}"
echo ""
sbatch --array=1-5 --dependency=aftercorr:${ArrayAID} Job_1.sh
© www.soinside.com 2019 - 2024. All rights reserved.