BrakeBlog

Local photography, National rants, Zero navel-gazing allowed… Blogging from Hopkinsville, KY

CFS change causes CPU insomnia

Continuing on from previous thoughts about why Linux 2.6.23 sleeps in shallow cpu idle states with Wifi active. I finally have it narrowed down to a scheduler change after v2.6.23-rc3. On an idle system with no Xorg started but Wifi active the CPU remains in the C2 state unneccessarily.

PowerTOP 1.8 (C) 2007 Intel Corporation
Collecting data for 60 seconds
Cn Avg residency
C0 (cpu running) ( 0.2%)
C1 0.0ms ( 0.0%)
C2 82.0ms (85.9%)
C3 0.0ms ( 0.0%)
C4 37.9ms (13.9%)
P-states (frequencies)
1.87 Ghz 0.0%
1.60 Ghz 0.0%
1333 Mhz 0.0%
800 Mhz 100.0%
Wakeups-from-idle per second : 14.2 interval: 60.0s
no ACPI power usage estimate available
Top causes for wakeups:
71.8% ( 10.1) <interrupt> : ipw2200, lan0

In -rc3 and earlier the CPU would fall into C4 99% of the time even with ipw2200 active. In -rc4 and later there’s a 70/30 or greater split between C2/C4 under the same conditions. If I start tapping the keyboard to create wakeups then it actually spends greater amounts of time in C4.

PowerTOP 1.8 (C) 2007 Intel Corporation
Collecting data for 60 seconds
Cn Avg residency
C0 (cpu running) ( 0.2%)
C1 0.0ms ( 0.0%)
C2 56.1ms (61.4%)
C3 0.5ms ( 0.0%)
C4 38.0ms (38.4%)
P-states (frequencies)
1.87 Ghz 0.0%
1.60 Ghz 0.0%
1333 Mhz 0.0%
800 Mhz 100.0%
Wakeups-from-idle per second : 21.1 interval: 60.0s
no ACPI power usage estimate available
Top causes for wakeups:
48.5% ( 10.1) <interrupt> : ipw2200, lan0
30.4% ( 6.3) <interrupt> : PS/2 keyboard/mouse/touchpad


Posted

in

by

Tags: