gpt4 book ai didi

python - 如何检查 slurm 作业是否是数组中最后一个 **RUNNING**?

转载 作者:太空宇宙 更新时间:2023-11-03 13:59:10 25 4
gpt4 key购买 nike

我需要将一组作业发送到 SLURM 集群,并且需要它们将部分结果聚合到一个组合文件中。但是,我不能让多个独立的 slurm 阵列无人机写入同一个文件。所以目前我正在尝试让最后一架无人机聚合所有数据。

目前,我让每个数组无人机在完成时检查是否所有其他结果都已写入,如果是,则执行文件写入。然而,目前多个无人机几乎在同一时间完成,并且似乎仍在尝试写入同一个文件。

我希望只有阵列中的最后一架无人机才能执行此操作。然而,最后一架无人机(即通过检查作业 ID)可能不是最后一架完成的无人机,因为作业所需的时间长度略有不同。

那么有没有办法让每架无人机检查它是否是阵列中运行的最后一架或其他什么?或者有没有更好的方法来做到这一点,我忽略了?

另外,如果可能的话,我更喜欢用 python 回答,因为这就是我正在使用的。

最佳答案

最简单的方法是为聚合创建一个附加作业并添加对作业数组的依赖项。

    #SBATCH --dependendy=afterany=<jobid of the job array>

参见https://slurm.schedmd.com/job_array.htmlhttps://slurm.schedmd.com/sbatch.html

关于python - 如何检查 slurm 作业是否是数组中最后一个 **RUNNING**?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49382370/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com