Chris Friesen wrote:
Peter Williams wrote:
To my mind scheduling and load balancing are orthogonal and keeping
them that way simplifies things.
Scuse me if I jump in here, but doesn't the load balancer need some way
to figure out a) when to run, and b) which tasks to pull and where to
push them?
Yes but both of these are independent of the scheduler discipline in force.
I suppose you could abstract this into a per-scheduler API, but to me at
least these are the hard parts of the load balancer...
Load balancing needs to be based on the static priorities (i.e. nice or
real time priority) of the runnable tasks not the dynamic priorities.
If the load balancer manages to keep the weighted (according to static
priority) load and distribution of priorities within the loads on the
CPUs roughly equal and the scheduler does a good job of ensuring
fairness, interactive responsiveness etc. for the tasks within a CPU
then the result will be good system performance within the constraints
set by the sys admins use of real time priorities and nice.
The smpnice modifications to the load balancer were meant to give it the
appropriate behaviour and what we need to fix now is the intra CPU
scheduling.
Even if the load balancer isn't yet perfect perfecting it can be done
separately to fixing the scheduler preferably with as little
interdependency as possible. Probably the only contribution to load
balancing that the scheduler really needs to make is the calculating of
the average weighted load on each of the CPUs (or run queues if there's
more than one CPU per runqueue).
Peter
--
Peter Williams [email protected]
"Learning, n. The kind of ignorance distinguishing the studious."
-- Ambrose Bierce
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]