We do this with a resource quota called slotcap that references the $num_proc 
instead of hard coding the number of cores (we have nodes with 2 cores, 8 cores 
and 16 cores, this works well for all of these):

qconf -arqs slotcap

{
   name         slotcap
   description  Keep slots equal to processor cores for all exec hosts
   enabled      TRUE
   limit        hosts {*} to slots=$num_proc
}

Here's what num_proc looks like in the complex list. I can't recall if I added 
it or if it's built in:

qconf -sc | grep num_proc

num_proc            p          INT         ==    YES         NO         0       
 0


You can query your compute nodes to see the value of num_proc to ensure it is 
properly reported, for example, say one of the exec hosts / compute nodes is 
named compute-0-1:

qconf -se compute-0-1 | grep num_proc

load_values           arch=lx26-amd64,num_proc=8,mem_total=16050.253906M, \

-----Original Message-----
From: [email protected] [mailto:[email protected]] On 
Behalf Of "Hung-Sheng Tsao (laotsao ?? ) Ph.D"
Sent: Tuesday, March 08, 2011 11:43 AM
To: [email protected]
Subject: Re: [gridengine users] how to add queue - help!

  since slots is consumable resources
can one set complex_values with value slots=# where the number is the 
max core of the hosts?

qconf -mattr host complex_values slots=# <hostname>
regards


On 03/ 8/11 12:24 PM, Ian Kaufman wrote:
> Hi Sangmin,
>
> On Tue, Mar 8, 2011 at 8:21 AM, Park Sangmin<[email protected]>  wrote:
>> Hello,
>>
>> I have a question about addition of queues.
>> I added several queue according to the sge documents.
>> and I submitted some job to test whether queue is right or not.
>>
>> I added 3 queues, short.q, normal.q, and long.q
>> hostlist of all queue is @allhosts.
>>
>> I submitted a job using short.q and normal.q
>> and GE scheduled jobs. But, problem occurred.
>> job using short.q was running node01(8 cores)
>> when I submitted another job using normal.q, the job scheduled on the same 
>> node, node01.
>> so, 16 jobs was running on 8 core system.
>>
>> what I imagined  was that short.q and normal.q is dependent.
>> so, if a job was running on node01, another job would scheduled other nodes, 
>> eg, node02, node03,....
>>
>> what was my fault?
>>
> The queues are independent of each other.
>
> If you want to limit the number of jobs per node, you can use another
> Resource Quota:
>
> {
>     name         maxslots
>     description  Limit number of slots to number of CPUs
>     enabled      TRUE
>     limit        hosts {@allhosts} to slots=8
> }
>
> limits each node to 8 slots. By default, Grid Engine uses one slot per
> core, and one job fits in each slot.
>
> Ian
>

_______________________________________________
users mailing list
[email protected]
https://gridengine.org/mailman/listinfo/users

Reply via email to