reference, queue attribute setting
Q1: 兩個computing nodes, 每個computing node有32processers, 但每個computing node 只能同時run 4個job by C-soft, other will be queue by C-soft itself.
how to control queue by PBS?
Solution:
set1: 產生routing queue
qmgr -c"create queue HSP"
qmgr -c"set queue HSP queue_type = Route"
qmgr -c"set queue HSP route_destinations = HSP2"
qmgr -c"set queue HSP route_destinations += HSP3"
(注意喲! 上面的destimation order 是執行上的順序,換先檢視queue HSP2是否滿足,若不滿足才會執行HSP3)
qmgr -c"set queue HSP enabled = True"
qmgr -c"set queue HSP started = True"
set2: setting execution queue HSP2
qmgr -c"create queue HSP2"
qmgr -c"set queue HSP2 queue_type = Execution"
qmgr -c"set queue HSP2 max_running = 4"
(注意喲! 設定Max_running job number is very important! 此時若submit job超過四個,第五個會因為queue HSP2條件不滿足,而往queue HSP3送!)
qmgr -c"set queue HSP2 resources_default.neednodes = pc02"
qmgr -c"set queue HSP2 resources_default.nodes = 1"
qmgr -c"set queue HSP2 resources_default.ncpus = 1"
qmgr -c"set queue HSP2 resources_max.ncpus = 4"
qmgr -c"set queue HSP2 resources_default.walltime = 12:00:00"
qmgr -c"set queue HSP2 enabled = True"
qmgr -c"set queue HSP2 started = True"
set2: setting execution queue HSP3 . The setting varible is the same as HSP2, but neednodes=pc03
finnaly, 假設我們丟9個jobs
Job ID Name User Time Use S Queue
--------------------- ---------------- ------------ -------- - -----
100 025 ha 01:58:16 R HSP2
101 025 ha 00:00:01 R HSP2
102 025 ha 00:00:01 R HSP2
103 025 ha 00:00:01 R HSP2
104 025 ha 00:00:01 R HSP3
105 025 ha 00:00:01 R HSP3
106 025 ha 00:00:01 R HSP3
107 025 ha 00:00:01 R HSP3
108 025 ha 0 Q HSP
JOB.108 會等computing nodes HSP2,HSP3看誰是avaliable, HSP 會往那邊送!
ps: pbsnodes
vi /var/spool/torque/server_priv/nodes
pc02 np=32
pc03 np=32
留言列表