On Thu, Sep 29, 2011 at 03:36:03PM -0500, David Young wrote: > What's the difference in power savings between changing C-state and > changing frequency? Do the power savings from every change in C-state > dominate the savings from any change in frequency?
Depends on the machine. But generally on x86, C-states appear to be now the dominant form. But these go side by side. To cut the corners short: the general (hardware) idea is that while few CPUs are in a deep C-state (i.e. idle), a group of other CPUs can enter a high-performance P-state. The net result should be increase of performance, despite of the power management. But obviously for instance ARM may do this all differenly, using only frequency scaling. > It seems that ultimately we need an API for telling a power-savings goal > and constraints (latency, throughput, battery life, the screen isn't too > dark to read) for the system to meet. Do you hope for someone to build > that into the kernel on top of cpufreq(9)? Not really; as I've written before, my opinion is that most of this should be in the user space. The CPU PM is an exception for obvious reasons. There could be a more involved API for cpu_idle(9) though (cf [1]). - Jukka. [1] The Linux cpuidle-subsystem; http://lwn.net/Articles/384146/
