Messages in this thread | | | Date | Mon, 26 Dec 2005 21:38:06 +0100 | From | Pavel Machek <> | Subject | Re: [PATCH] i386 No Idle HZ aka dynticks 051221 |
| |
Hi!
> I believe the reason why is that the T40 has an extra C state which > only shows up if you are running on battery; if you are running on the > AC mains, C4 disappears:
Stupid IBM. I've seen it appearing/disappearing, but did not work out when.
No-C4-on-AC is bad -- if you just disconnect AC and walk away, you are running without benefits of C4. Bad. Changing benchmarks depending on you booting on AC or battery also look nasty.
> > *C1: type[C1] promotion[C2] demotion[--] latency[001] usage[00000000] time[00000000000000000000] > C2: type[C2] promotion[C3] demotion[C1] latency[001] usage[00000000] time[00000000000000000000] > C3: type[C3] promotion[C4] demotion[C2] latency[085] usage[00000000] time[00000000000000000000] > C4: type[C3] promotion[--] demotion[C3] latency[185] usage[00000000] time[00000000000000000000] > > With dyntick enabled, the laptop never enters the C4 state, but > instead bounces back and forth between C2 and C3 (and I notice that we > never enter C1 state, even when the CPU is completely pegged, but > that's true with or without dyntick).
C1 is halt. If your cpu is fully loaded, you don't want to enter any sleep state, not even C1.
> If dyntick is enabled, the laptop enters C4 state, which presumably is > a deeper, more power saving state, and it appears power saving effects > of dyntick is getting balanced off against the fact that C4 is never > getting entered when it is enabled.
Can you boot on AC power, then go to battery power to verify this theory?
> Looking at acpi/processor_idle.c, there is all sorts of magic special > cases code for the C2 and C3 states (both for promotion/demotion > polcies, as well as what to do when idling in those particular > states), and which doesn't exist for other states, such as C4. > Presumably this explains why we are only never entering C1, and why > dyntick enabled C4 never gets reached. What I don't understand is > _why_ all of the magic is present for those two states, but not for > any of the others. > > For future work when I have time, is to actually do some performance > benchmarks; given that the power consumption doesn't appear to be > changed either way with dyntick enabled or disabled, does the time > needed to compile a kernel change significantly with or without > dyntick?
It should not change at all. If your cpu is loaded, timers should tick as usual, so that you can properly account user/system times of processes etc. Pavel -- Thanks, Sharp! - 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/
| |