用扭矩设置总内存限制

我运行一个适度大小的集群,我有一个队列问题。 例如,我有一个128GB的内存节点和一个程序,我设置每个内核的内存量。 因此,例如,如果我将内存设置为8GB,那么我将只能运行16个内核,然后再打虚拟内存,这是必须避免的。 现在我正在使用Torque作为排队方法,如果我将两个10核心作业提交到每个8GB的单个节点,它将尝试使用160GB的内存。 我想要做的是限制一个节点上的作业数量,以使它们的总内存使用量仅仅是节点的物理内存。 每个内核的内存数量是高度dynamic的,作业可以轻松使用所有物理内存,但只能使用可用内核的一小部分。

根据我的理解,通过阅读和实验,只有当作业在节点上运行后超过这些限制,并且在作业继续之前不对这些限制进行调节时,Tor才能使用pmem,vmem,mem命令。 作为一个侧面说明,这些工作中有很多只能使用后期所需内存的10%。

那么有没有办法与Torque做到这一点。 如果没有,你会build议另一个排队程序?

感谢您的时间。