frequency requests in upower

Ben Gamari bgamari.foss at gmail.com
Wed Apr 7 20:00:49 PDT 2010


On Wed, 7 Apr 2010 13:25:30 -0500, Mike Turquette <mturquette at gmail.com> wrote:
> Hi all,
> 
> I was glancing over the QoS aspects of upower, and the control knobs
> all appear to be related to latency.
> 
> What if I had a codec for, say, video playback and I know it needs X
> MHz to run properly.  How could upower help me to do this?  I'll
> assume I have some cpufreq governor running in the background, but I
> don't want to rely on that to get the job done when I already know my
> frequency requirements.
> 
> I guess my real question is, will frequency-based QoS knobs ever make
> their way into upower?  I know the hot topics these days are
> constraints (dma latency, cpu wake up latency, network throughput,
> etc), but sometimes you just need the megahertz.
> 
You seem to be assuming that the cpufreq governor somehow does an inferior
job of keeping up with your computational requirements. If the ondemand
governor (which should be used in pretty much all cases) isn't giving you
the clockrate necessary to keep up with your workload, then that's a bug.
Cpufreq is the correct solution here. While you might think you know your
frequency requirements today, they will invariably change over time and between
machines. UPower doesn't implement frequency-based QoS management because it's
fundamentally the wrong approach. This is what cpufreq is for.

You might want to take a look at Matthew Garrett's excellent blog[1] on CPU power
management. I think it will help dispel a bunch of misconceptions you have
formed.

- Ben

[1] http://mjg59.livejournal.com/88608.html


More information about the devkit-devel mailing list