例如,我有 20 个计算机集群和 4 个用户。我想为用户提供 5 个主机(或 N 个插槽),但如果没有使用整个集群,则用户作业可以在其他主机/插槽上运行。
在 sge6.2u2 中可以实现吗?
答案1
如果我理解正确的话,您希望 4 个用户中的每一个都能优先访问他们自己的主机组,但在空闲时也可以访问其他主机。我不知道如何实现这个确切的效果,但您可以使用从属队列获得类似的效果。
确保所有执行主机都在名为 all.q 的全局队列中。
对于每个用户,创建一个队列,即 user1.q、user2.q 等。
在每个用户队列中,将“all.q”添加到下级队列列表中。该条目看起来类似于“all.q=3”,表示如果 user.q 中使用了超过 3 个槽,则 all.q 中的作业将被暂停。
仅将每个用户的“高优先级”列表中的主机添加到其相应的队列中。
然后如果您的用户将他们的作业提交给 all.q,它们将在整个集群上运行;但是提交到他们的用户队列的作业可以覆盖这些,以便用户可以优先访问他们自己的节点。