none
Balanced Scheduling Mode Questions

    Question

  • I was reading on 'Scheduling Mode' and I have some questions:

    1. Assuming we have 3 jobs: J1, J2, J3  (they were submitted in that order) with priorities 300 400 400 respectively and each requesting [2 min, 8 max] resources when there are only 9 resources, then each job will receive 2 resources and we will gave 3 leftover.  Which of the 2 jobs (J2 or J3) gets 2 resources?  Is it J2 because it entered the queue first?  (using High bias)
    2. The documentation mentions that when 'Medium Bias' is selected, this jobs that have a higher priority will receive a higher proportion - how is this proportion calculated?  For instance, if I have 16 additional resources available and I have 3 jobs and one of those has higher priority than the others, who gets the extra resources assuming the are all requesting the same min. and max.?
    3. Regardless of Bias, if the cluster is at full capacity running jobs with scheduling mode and no additional resources are being used, if a higher priority job is scheduled, it will have to wait until one if the lower priority job finishes - right?  In other words, preemption only happens when we are using additional resources?
    Hope this makes sense :)

    Tuesday, August 3, 2010 5:30 AM

Answers

  • Although you do not say so explicitly, it seems from your questions that they are specific to when the scheduling mode is set to Balanced scheduling. So, the answers are going to be relevant to balanced scheduling mode.

    1. Since J2 and J3 are the same priority they will try to divide the remaining resources between them. However, as the number of resources left is odd and J2 entered the queue earlier, J2 will get 2 resource and J3 will get 1.

    2. In medium bias, a job of  priority 2000 (corresponding to the old normal priority) will get twice the number of additional resources as a job of priority 1000 (corresponding to the old below normal priority). The proportion of resources doubles with every 1000 increase in expanded priority for medium bias. In High Bias the proportion of increase is 10 times for every 1000 increase in priority. For your example case, if the bias is medium and there are 16 additional resources and 3 jobs, J1 and J2 of priority 1000 and J3 of 2000. Then J1 and J2 will get 4 resources and J3 will get 8 resources.

    3. If the new higher priority job finds that there are enough jobs of priority lower than it running such that if it canceled all those lower priority jobs and took their resources, it could start running, it would preempt those jobs and start running. Preemption can also happen to give a higher priority job its minimum resource requirements.

     

    • Marked as answer by scorpiotek Tuesday, August 3, 2010 10:17 PM
    Tuesday, August 3, 2010 7:46 PM

All replies

  • Although you do not say so explicitly, it seems from your questions that they are specific to when the scheduling mode is set to Balanced scheduling. So, the answers are going to be relevant to balanced scheduling mode.

    1. Since J2 and J3 are the same priority they will try to divide the remaining resources between them. However, as the number of resources left is odd and J2 entered the queue earlier, J2 will get 2 resource and J3 will get 1.

    2. In medium bias, a job of  priority 2000 (corresponding to the old normal priority) will get twice the number of additional resources as a job of priority 1000 (corresponding to the old below normal priority). The proportion of resources doubles with every 1000 increase in expanded priority for medium bias. In High Bias the proportion of increase is 10 times for every 1000 increase in priority. For your example case, if the bias is medium and there are 16 additional resources and 3 jobs, J1 and J2 of priority 1000 and J3 of 2000. Then J1 and J2 will get 4 resources and J3 will get 8 resources.

    3. If the new higher priority job finds that there are enough jobs of priority lower than it running such that if it canceled all those lower priority jobs and took their resources, it could start running, it would preempt those jobs and start running. Preemption can also happen to give a higher priority job its minimum resource requirements.

     

    • Marked as answer by scorpiotek Tuesday, August 3, 2010 10:17 PM
    Tuesday, August 3, 2010 7:46 PM
  • These answers make perfect sense - thanks much for taking the time to address them.
    Tuesday, August 3, 2010 10:17 PM