重新排序PBS队列中的项目

时间:2014-02-11 16:39:08

标签: pbs

我向PBS提交了几份工作。现在,我希望我提交的作业最后一个是第一个。

一种选择是保存所有预览作业(使用qhold)。问题是我使用了-W depend=afterok:开关,以便在预览作业结束后启用作业。

因此,我的PBS队列看起来像这样:

468743.server   username    queue_name job1         4828   6  36   46gb 24:00 R 16:12
468744.server   username    queue_name job1_cont     --    6  36   46gb 24:00 H   -- 
468745.server   username    queue_name job1_cont     --    6  36   46gb 24:00 H   -- 
468746.server   username    queue_name job1_cont     --    6  36   46gb 24:00 H   -- 
468747.server   username    queue_name job1_cont     --    6  36   46gb 24:00 H   -- 
468748.server   username    queue_name job1_cont     --    6  36   46gb 24:00 H   -- 
468743.server   username    queue_name job2         4828   6  36   46gb 24:00 R 16:12
468744.server   username    queue_name job2_cont     --    6  36   46gb 24:00 H   -- 
468745.server   username    queue_name job2_cont     --    6  36   46gb 24:00 H   -- 
468746.server   username    queue_name job2_cont     --    6  36   46gb 24:00 H   -- 
468747.server   username    queue_name job2_cont     --    6  36   46gb 24:00 H   -- 
468748.server   username    queue_name job2_cont     --    6  36   46gb 24:00 H   -- 
468753.server   username    queue_name NewJob        --    6  36   46gb 24:00 H   -- 
468754.server   username    queue_name NewJob_cont        --    6  36   46gb 24:00 H   -- 
468755.server   username    queue_name NewJob_cont        --    6  36   46gb 24:00 H   -- 

现在,我想在{job1,job2}中的第一个作业完成之后,以及任何“_cont”之前运行 NewJob ,这是最后一行。我希望NewJob_cont工作将在NewJob之后运行。

我是否可以在不破坏保留队列层次结构的其余部分的情况下改变 NewJob 的位置?

1 个答案:

答案 0 :(得分:3)

您可以使用qalter更改作业的依赖关系。你可以执行:

qalter 468744 -W depend=after:468753
qalter 468753 -W depend=after:468743

这将使得468744直到新作业完成后才执行,并且新作业直到第一个作业之后才执行。正如您可以在依赖项添加到排队作业之后,您还可以添加其他类型的依赖项。