Re: [RFC] (How to) Let idle CPUs sleep

From: Srivatsa Vaddagiri
Date: Thu May 12 2005 - 12:13:31 EST


On Thu, May 12, 2005 at 09:28:55AM -0700, Jesse Barnes wrote:
> Seems like we could schedule timer interrupts based solely on add_timer
> type stuff; the scheduler could use it if necessary for load balancing
> (along with fork/exec based balancing perhaps) on large machines where
> load imbalances hurt throughput a lot. But on small systems if all

Even if we were to go for this tickless design, the fundamental question
remains: who wakes up the (sleeping) idle CPU upon a imbalance? Does some other
(busy) CPU wake it up (which makes the implementation complex) or the idle CPU
checks imbalance itself at periodic intervals (which restricts the amount of
time a idle CPU may sleep).

> your processes were blocked, you'd just go to sleep indefinitely and
> save a bit of power and avoid unnecessary overhead.
>
> I haven't looked at the lastest tickless patches, so I'm not sure if my
> claims of simplicity are overblown, but especially as multiprocessor
> systems become more and more common it just seems wasteful to wakeup
> all the CPUs every so often only to have them find that they have
> nothing to do.

I guess George's experience in implementing tickless systems is that
it is more of an overhead for a general purpose OS like Linux. George?


--


Thanks and Regards,
Srivatsa Vaddagiri,
Linux Technology Center,
IBM Software Labs,
Bangalore, INDIA - 560017
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/