[GE users] Machine Priority

Benjamin Simmons bdsimmns at memphis.edu
Tue Oct 19 19:01:49 BST 2004


If I understood everything said about this topic this morning, To 
implement one of the ideas, you would change the scheduler to a seq_no 
sort.  Then define a queue for each set of machines Q1,Q2,Q3 and give 
the ones you want to always have run a job if they are available a 
seq_no=1, the ones to fill next, a seq_no=2, and the next set a seq_no=3 
(assuming serial jobs)

If this part is correct, can you still have the allq queue defined and 
maybe make it subordinate to the others so if someone requests a 
parallel environment that would require machines from all 3 queues it 
can be assigned to the allq?

Thanks to everyone for their thoughts,

Ben Simmons

Terry Lalonde wrote:

>>>>Does anyone have a better way to do this?  Perhaps somehow add a
>>>>constant to the generated load of each host based on processor
>>>>        
>>>>
>speed?
>
>That's essentially what I did.  I wrote a load monitor and added a
>load to machine of different class.  It works OK. 
>We also have desktop machines on the grid and I also wanted to avoid 
>using them as much as possible so I biased their load using this too:
>
>I set the load formula to: np_load_average*1+isdesktop*1
>
>
>#!/bin/perl
>$| = 1;
>
>while(<>) {
>
>        if( $_ =~ /^quit$/ ) {
>                exit 0;
>        }
>        chop($hostname = `hostname`);
>        $_ = $hostname;
>        print "begin\n";
>CASE: {
>        (($hostname =~ /^ws-[1-9]*/) || ($hostname =~ /^grid/)) && do {
>            print "$hostname:isdesktop:2.50\n";
>            last CASE;
>         };
>
>        ($hostname =~ /^ws.*/) && do {
>            print "$hostname:isdesktop:3.00\n";
>            last CASE;
>         };
>
>        ($hostname =~ /^wx.*/) && do {
>            print "$hostname:isdesktop:1.50\n";
>            last CASE;
>         };
>
>        (($hostname =~ /^stimp*/) || ($hostname =~ /^ren*/)) && do {
>            print "$hostname:isdesktop:0.50\n";
>            last CASE;
>         };
>
>        print "$hostname:isdesktop:0.00\n";
>
>      }
>        print "end\n";
>}
>
>=================================
>
>
>
>
>
>-----Original Message-----
>From: Sean Dilda [mailto:agrajag at dragaera.net] 
>Sent: Tuesday, October 19, 2004 10:22 AM
>To: users at gridengine.sunsource.net
>Subject: Re: [GE users] Machine Priority
>
>On Tue, 2004-10-19 at 09:58, Reuti wrote:
>  
>
>>>I have a cluster running SGE 6.0  This cluster consists of a mixture
>>>      
>>>
>of 
>  
>
>>>1Ghz, 2Ghz, and 3Ghz machines.  Is there a way to ensure that the
>>>      
>>>
>3Ghz 
>  
>
>>>machines are always used first out of the pool of open resources?
>>>      
>>>
>>You can set a different sequence number for each type of machine and 
>>change the scheduler to sort by seqno (qconf -msconf). This will give 
>>the intended result (for serial jobs).
>>
>>For simpleness I suggest defining three hostgroups. Then you can set:
>>    
>>
>
>I have an almost identical problem to the original poster.  I had
>considered this, but from what I can tell, it means that load average
>will no longer be taken into account (except for alarm states) when
>scheduling jobs.  This seems like a bad thing to me.
>
>I've also considered the load scaling.  Unfortunately, not matter what
>scaling you do, a load of 0.00 will always scale to a load of 0.00, and
>this doesn't help the problem any.
>
>Does anyone have a better way to do this?  Perhaps somehow add a
>constant to the generated load of each host based on processor speed?
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
>For additional commands, e-mail: users-help at gridengine.sunsource.net
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
>For additional commands, e-mail: users-help at gridengine.sunsource.net
>
>
>  
>




More information about the gridengine-users mailing list