Users 3
o Ashley => guaranteed minimum number of nodes: 4
o Bob => guaranteed minimum number of nodes: 4
o Otto
Scenario 1:
Job size of all jobs is 3 nodes
There are always jobs waiting, but not always from all users
Therefore the number of jobs running can vary
o Ashley: 0 – 3 job (zero only when no job is waiting, as a 3 node job fits in the guaranteed minimum number of nodes)
o Bob: 0 – 3 job (zero only when no job is waiting, as a 3 node job fits in the guaranteed minimum number of nodes)
o Otto: 0 - 1 job
Rest of the users will run jobs on the remaining nodes.
Also, Ashley / Bob can submit jobs to other queues as well , other than their respective reservation queues
Non-reservation way:
Otherwise some hooks and below configuration:
qmgr -c “create resource ashley type=long,flag=q”
qmgr -c “create resource bob type=long,flag=q”
qmgr -c “create resource totalnodes type=long,flag=q”
Add “ashley,bob,totalnodes,others” to the resources: line in the $PBS_HOME/sched_priv/sched_config and kill -HUP <PID of pbs_sched process>
qmgr -c “set server resources_available.ashley=4”
qmgr -c “set server resources_available.bob=4”
qmgr -c “set server resources_avaialble.totanodes=13”
qmgr -c “set server resources_avaialble.others=5”
You can have server/queue limits to limits number of jobs run by each user ( or control it via server periodic hook based on some logic )
Make sure you have hook that attaches requests accordingly , for example if ashley submits a job then the qsub statement should look below
Hi Adarsh,
i have created reservation by pbs_rsub and both user can reserve 4-4 compute nodes but if user wanted to submit 6 or 9 node jobs then how to submit jobs with reserve and unreserve node for a single job
user need to submit 9 node job with his 4 reserve node ?
Another way to look at this is that Ashley can use all the nodes except the 4 set aside for Bob (13 - 4 = 9). Similarly Bob can use all the nodes except the 4 set aside for Ashley (also 9). Everyone else can use all except the 4 + 4 set aside for Ashley and Bob (13 - 8 = 5).