On Monday 22 June 2009 15:56:47 Mike Mazur wrote: > Hello, > > I noticed some issues with the power management setup I had when I > upgraded kernels over the last few months. This past weekend I decided > to crack down on this to see whether they could be fixed. I visited > the Gentoo Power Management Guide[1] again and re-traced the setup to > verify my system's behavior.
I tossed that entire guide in the bin where it belongs a long time ago. Waaaaaay too complex, and seems to rely on faulty assumptions. Dump cpufreqd. Use just the ondemand governor instead and get rid of the rest. It's better suited to how modern chips work anyway. You safe nothing and spend a great deal trying to fiddle cpu frequencies, and it's an expensive operation. Her'e what you *really* want the cpu to do: Wake up periodically, go to state C0 *once*. Do work, do it quickly at full speed. Go back to sleep for as long as the cpu can. Remember, the cpu will still take the same number of clock cycles to complete a task, irrespective of what the frequency might be. The cpu is most efficient when running at it's design frequency, so let it do that and put it quickly into the lowest state you can get it into quickly. Then sleep. [snip] > The second issue is with cpufreqd. When the power is unplugged, the > CPU scaling kicks in as expected, and the processors are cut to half > power (running at ~1GHz instead of their full capacity of ~2GHz). When > the AC adapter is plugged back in, the CPUs continue to operate at > only ~1GHz instead of being bumped back up to ~2GHz and I see messages > like this in my syslog: That sounds like the conservative governor, the worst one of the lot. It forces the cpu to rapidly change state, and do it often. Changing C state is expensive, do it as seldom as you can. Just use ondemand all the time. > The third issue seems to be with power management of my wireless card. > I have the iwl3945 wireless card. In older version of the kernel > (2.6.25 and before, I believe) this card was managed by a daemon in > userspace. After that the driver was merged into the kernel. I noticed > recently that the entry in /etc/conf.d/net (as per the Power > Management Guide) causes this error when the interface comes up: iwl3945 does not (yet) support this to the best of my knowledge. It also doesn't work here either. -- alan dot mckinnon at gmail dot com