Re: [PATCH v3 1/3] cpufreq: ondemand: Change the calculation of targetfrequency

From: Stratos Karafotis
Date: Mon Jun 10 2013 - 17:57:36 EST

On 06/09/2013 11:58 PM, Rafael J. Wysocki wrote:
> Well, this means that your changes may hurt performance if the load comes and
> goes in spikes, which is not so good. The fact that they cause less energy to
> be used at the same time kind of balance that, though. [After all, we're
> talking about the ondemand governor which should be used if the user wants to
> sacrifice some performance for energy savings.]
> It would be interesting to see if the picture changes for different time
> intervals in your test program (e.g. loop duration that is not a multiple of
> sampling_rate and sleep times different from 5000 us) to rule out any random
> coincidences.
> Can you possibly prepare a graph showing both the execution time and energy
> consumption for several different loop durations in your program (let's keep
> the 5000 us sleep for now), including multiples of sampling_rate as well as
> some other durations?


I tested different loop durations with my program from 1,000us to 1,000,000us.
The logic is almost the same with the previous test:

1) Use a 'for' loop to a period T (~ 1000-1000000us)
2) sleep for 5000us
3) Repeat steps 1-2, 50 times.
4) sleep for 1s
5) Repeat 1-4, 5 times.

The results:

Sheet1 (ProcessX1) includes the results from the test program running
as single copy. The second one (ProcessX4) includes the results from the test
program running it in 4 copies in parallel (using a bash script that waits
the end of execution).

Graphs show the difference(%) in total execution time and total energy without
and with the patch.
Negative values mean that the test *with* the patch had better performance or
used less energy.

Test shows that below sampling rate (10000us in my config), ondemand with this
patch behaves better (both in performance and consumption).
Though, in this test, for loads with 10000us < duration <= 200000us ondemand
behaves better without the patch.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at