SGE节点中的负载是否可以超过CPU的数量?

时间:2013-09-16 01:51:59

标签: cpu-usage administration slots qsub sungridengine

我在Sun Grid Engine(现在称为Oracle Grid Engine)群集上运行工作。要查看我的作业是否由于节点过载而变慢,我尝试检查节点的状态:

$ qstat -l hostname=hnode03 -f
queuename                      qtype resv/used/tot. load_avg arch          states
---------------------------------------------------------------------------------
all.q@hnode03.rnd.mycorp.com BP    0/0/0          103.41   lx24-amd64
---------------------------------------------------------------------------------
highmem.q@hnode03.rnd.mycorp BP    0/37/40        103.41   lx24-amd64
 977530 0.76963 runJob1 userme       r     09/13/2013 17:53:26     2
---------------------------------------------------------------------------------
threaded.q@hnode03.rnd.mycor BP    0/24/32        103.41   lx24-amd64
---------------------------------------------------------------------------------
workflow.q@hnode03.rnd.mycor B     0/0/0          103.41   lx24-amd64

$ qhost -h hnode03
HOSTNAME                ARCH         NCPU  LOAD  MEMTOT  MEMUSE  SWAPTO  SWAPUS
-------------------------------------------------------------------------------
global                  -               -     -       -       -       -       -
hnode03                 lx24-amd64     64 103.4  504.8G  122.9G   16.0G   58.0M

现在,load_avg是103.41,而NCPU只有64.这应该发生吗?某些作业是使用CPU而不是分配它们的插槽吗?

更新:在回复查询时,配置会上传到http://pastebin.com/hLnJBetS

1 个答案:

答案 0 :(得分:2)

是的,它可以。

插槽不是核心的同义词(NCPU)。必须将插槽视为“可以在节点上并行调度多少个作业。”

如果您只想一次运行一个作业,请将计算机的插槽数设置为一个。

对于加载因子,即使您的作业只使用一个插槽,如果您有太多线程或子进程,那么将使用所有核心并且加载因子肯定会超过1。