Grid Engine 默認排隊任務的優先級是靠時間積累增長,但我想指定某些排隊的任務優先被執行。例如要求 CPU 較多的任務就比單CPU的多個任務更難被執行。linux
查看任務的優先級
shell
qstat -pri
更改任務的優先級(<JOB_ID>表明某個任務號)spa
qalter -p +1000 <JOB_ID>
結果無效,排隊任務的 prior 沒有改變。.net
查看 man 手冊
code
man 5 sge_priority
網頁版本:http://linux.die.net/man/5/sge_priorityget
其中說明優先級是靠下面這個公式計算出來的:
it
prio = weight_priority * pprio + weight_urgency * nurg + weight_ticket * ntcktsio
The higher a job's priority value, the earlier it gets dispatched.class
須要修改任務安排(scheduler)設置中的 weight_priority ,它默認爲零,因此 qalter 改變 pprio 影響不了最終的 prio 。
di
qconf -msconf
我修改成: weight_priority 0.500000
而後再執行命令,能夠看到排隊任務的 prior 改變了。
qalter -p +1000 <JOB_ID> qstat -pri