0

使用 SGE,我可以使用以下选项排除名为“node6”的节点:

#$ -l h=!node6

问题:有谁知道如何将其扩展到多个节点?我真的找不到一个好的 HowTo,我已经厌倦了猜测。谢谢!

4

1 回答 1

1

您可以使用通配符表达式来排除某些节点。例如,如果您有节点称为 node1, node2 ... nodeX; 排除 node2 到 node5 你可以使用:

 #$ -l h='!node[2-5]'

或排除几个节点:

 #$ -l h='!(nodeP|nodeQ|...|nodeR)' //P,Q,R in [1,X]

现在只需找到与您要排除的所有节点匹配的模式。

否则,您可以使用资源配额。为此,请创建资源配额:

qconf -arqs disabledHostsResourceQuota

编辑此资源配额以允许主机组(我们称之为 disabledHosts)阻止作业运行:

{
   name         disabledHostsResourceQuota
   description  resource quota to disable some hosts
   enabled      TRUE
   limit        hosts {@disabledHosts} to slots=0
}

然后创建您的主机组:

qconf -ahgrp  disabledHosts

并在“主机列表”字段中,添加您要禁用的所有主机。然后,您可以在没有任何选择的情况下提交您的工作,这应该可以解决问题。

于 2013-11-14T09:41:31.047 回答