Opened 9 years ago

Last modified 8 years ago

#809 new defect

IZ3272: Slotwise preemption slot usage controls (rqs, host complex) do not work properly

Reported by: stephendennis Owned by:
Priority: normal Milestone:
Component: sge Version: 6.2u5
Severity: minor Keywords: qmaster
Cc:

Description

[Imported from gridengine issuezilla http://gridengine.sunsource.net/issues/show_bug.cgi?id=3272]

        Issue #:      3272             Platform:     All      Reporter: stephendennis (stephendennis)
       Component:     gridengine          OS:        All
     Subcomponent:    qmaster          Version:      6.2u5       CC:    None defined
        Status:       NEW              Priority:     P1
      Resolution:                     Issue type:    DEFECT
                                   Target milestone: ---
      Assigned to:    ernst (ernst)
      QA Contact:     ernst
          URL:
       * Summary:     Slotwise preemption slot usage controls (rqs, host complex) do not work properly
   Status whiteboard:
      Attachments:

     Issue 3272 blocks:
   Votes for issue 3272:


   Opened: Tue Jul 20 20:24:00 -0700 2010 
------------------------


queuewise premption counts preempted job + preempting job as 1 slot

For example, rqs 'hosts {*} to slots=$num_proc' will allow jobs to
run in the subordinate queue and in the superordinate queue.

Also for example, setting host complex_values slots=n will allow
n subordinate jobs + n superordinate jobs.

slotwise preemption counts preempted job + preempting job as 2 slots

In slotwise, rqs 'hosts {*} to slots=$num_proc' total jobs in sub and
superordinate queue instances will not exceed $num_proc.

Also in slotwise setting host complex_values slots=n will allow
only n jobs to run in both superordinate and subordinate queue instances.

This makes slot control via rqs or host complex value impossible and
prevents the addition of a queue instance on a host that is not in
the super/sub ordinate hierarchy.

   ------- Additional comments from reuti Tue Jul 20 20:52:48 -0700 2010 -------
"queuewise premption counts preempted job + preempting job as 1 slot

For example, rqs 'hosts {*} to slots=$num_proc' will allow jobs to
run in the subordinate queue and in the superordinate queue."

This was always counting as 2 slots for me (just tested in 6.2u5), but you may notice the limit later.


What you can do in your case anyway, is to define two RQS which are limited to a queue each:

limit queues sub.q hosts {*} to slots=$num_proc

and in another RQS:

limit queues sup.q hosts {*} to slots=$num_proc

On a host level this isn't working of course, as you pointed out.

   ------- Additional comments from reuti Wed Jul 21 03:59:52 -0700 2010 -------
To avoid misinterpretation, I meant:

In the exechost definition this can't be set of course, as you pointed out.


BTW: as the two RQS rules are disjunct, they can even be placed in one and the same RQS.

Change History (1)

comment:1 Changed 8 years ago by dlove

  • Priority changed from highest to normal
  • Severity set to minor
Note: See TracTickets for help on using tickets.