Messages in this thread | | | Date | Sat, 1 Apr 2006 20:48:24 -0800 | From | "Siddha, Suresh B" <> | Subject | smpnice loadbalancing with high priority tasks |
| |
Peter,
There are still issues which we need to address.. These are surfacing as we are patching issue by issue(instead of addressing the root issue, which is: presence of high priority tasks messes up load balancing of normal priority tasks..)
for example
a) on a simple 4-way MP system, if we have one high priority and 4 normal priority tasks, with smpnice we would like to see the high priority task scheduled on one cpu, two other cpus getting one normal task each and the fourth cpu getting the remaining two normal tasks. but with smpnice that extra normal priority task keeps jumping from one cpu to another cpu having the normal priority task.
This is because of the busiest_has_loaded_cpus, nr_loaded_cpus logic.. We are not including the cpu with high priority task in max_load calculations but including that in total and avg_load calcuations.. leading to max_load < avg_load and load balance between cpus running normal priority tasks(2 Vs 1) will always show imbalanace as one normal priority and the extra normal priority task will keep moving from one cpu to another cpu having normal priority task..
b) on a simple DP system, if we have two high priority and two normal priority tasks, ideally we should schedule one high and one normal priority task on each cpu.. current code doesn't find an imbalance if both the normal priority tasks gets scheduled on the same cpu(running one high priority task)
there may not be benchmarks which expose these conditions.. but I think we haven't addressed the corner case conditions well enough..
thanks, suresh - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |