关于MAUI和torque的一些学习

一直以来,集群都出现了明明有够用的计算资源,但提交的作业还是会等待的情况,这几天决定着手好好研究下,做一些笔记如下 :

     花了好长的时间,才弄清楚MAUI和torque的关系,其实一个是调度策略,一个是调度器。这与要解决的问题关系不大,跳过。

症状:明明有够用的计算资源,但提交一个小资源的作业还是会等待。

解决过程:

1.使用check -v jobid,看看作业不能在每个节点上运行的原因,一般有5种原因

  Features:节点不满足请求的资源特征,如作业需要资源标识special,节点标识为normal就不能满足。

  ReserveTime:这个纠结了我很久,查了很多资源,这样理解——集群已经有很多作业在等,并且有一个高优先级的作业在前面,根据系统计算,它应该不用太久就能得到满足的资源,于是它先保留一些资源。如一个高优先级的作业申请nodes=2:ppn=16,而现在空闲资源只有nodes=1:ppn=16,但系统计算发现不用太久就会有一个nodes=1:ppn=16的资源被释放,于是,这个作业就把空闲的作业先占着,比它低优先级的作业即使只要一个小资源,也会因为这个原因而等待。

  Memory:没有足够的内存满足申请的内存量

  CPU:没有足够的CPU满足申请的CPU量

  State:节点状态(busy,excl)等导致的拒绝。

2.我碰到的情况主要是 ReserveTime,于是先用diagnose -p查看作业的优先级,看看能满足资源又被queued的作业优先级是什么情况。发现居然排在第二,排第一的作业得不到资源。。。

通过编辑maui.cfg文件,设置回填深度就搞定了:

RESERVATIONDEPTH 5
BACKFILLPOLICY BESTFIT
BACKFILLMETRIC PROCS
BACKFILLDEPTH 3
编辑完得把maui.d和pbs_server重启一下。

关于回填(backfill)的一些资源可以查看:http://www.clusterresources.com/products/moab/8.2backfill.shtml

另外发现曙光的gridview会把设置变复杂低效,很不喜欢在那里面操作。

到此问题应该解决了,但愿不要再出问题。

ps:MAUI有一些很有用的命令,以前都没用过,现在发现其实挺好用,如showbf,checkjob ,checknode ,diagnose,mdiag等。

你可能感兴趣的:(集群,server,features,作业,曙光)