在slurm 中, 当PreemptType=preempt/qos 时, 如何配置在同一个QOS中不同的job之间抢占? 如何在不同QOS之间进行不同的job 抢占? 请列举实例.
时间: 2024-03-03 20:52:45 浏览: 140
在Slurm中,QOS(Quality of Service)是一种用于管理作业分配和资源限制的机制。当PreemptType设置为preempt/qos时,可以在同一QOS中的不同作业之间进行抢占。要配置这种情况,您需要使用scontrol命令设置PreemptMode和PreemptType。例如,要在同一QOS中允许抢占,则可以使用以下命令:
```
scontrol set qos <qos_name> preempt_mode=preempt
scontrol set qos <qos_name> preempt_type=preempt/qos
```
这将允许在同一QOS中的不同作业之间进行抢占。
如果要在不同QOS之间进行不同的作业抢占,则需要为每个QOS配置不同的PreemptMode和PreemptType。例如,如果您有两个QOS,名为qos1和qos2,并且您想让qos1中的作业抢占qos2中的作业,但反过来不行,则可以使用以下命令:
```
scontrol set qos qos1 preempt_mode=preempt
scontrol set qos qos1 preempt_type=preempt/qos
scontrol set qos qos2 preempt_mode=suspend
scontrol set qos qos2 preempt_type=preempt/never
```
这将允许在qos1中的作业抢占qos2中的作业,但不允许在qos2中的作业抢占qos1中的作业。
请注意,这只是一种示例配置,您可以根据自己的需求进行配置。
阅读全文