Re: Issues with ondemand governor

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks David.
If I would like to fine tune up_threshold and sampling_down_factor for
say OMAP platform, is there any way to do it in kernel itself?
I know these are configurable via sysfs entries. But if I want to
optimize them in kernel itself, is there anyway? I see that default
values are set in cpufreq-ondemand.c which is common kernel file. I
would like to know if these can be set in platform specific code?

Vishwa
On Wed, Nov 24, 2010 at 7:42 PM, David C Niemi <dniemi@xxxxxxxxxxxx> wrote:
>
> Thanks for running the tests, Vishwa.  Your results are what I'd expect
> but it's good to see independent confirmation.  In my benchmarks I saw
> 95-100% of the performance governor's performance, but the conditions
> were more favorable and the original ondemand governor was "only"
> degrading performance 20-30% to begin with.
>
> There should be absolutely no changes in power consumption at all for
> the patch itself, as behavior does not change until you raise
> sampling_down_factor above 1 (the default).  If you set it high, I would
> expect higher power consumption (but also higher performance) under load
> and no change in power consumption when idle or close to idle.  Setting
> a high sampling_down_factor causes the governor to reevaluate load less
> often when at max cpu speed, both to reduce overhead and to let it
> remain at maximum performance more consistently.  Without this change,
> the ondemand governor jitters a lot in and out of max clock speed when
> under high loads, which is why its performance can be much worse than
> the performance governor.  Reducing the number of transitions and load
> evaluations should also improve performance per watt, though the details
> of that depend on the relative efficiency of the CPU's respective clock
> speeds.
>
> If you want to balance power consumption and performance, a middle
> setting of sampling_down_factor like "10" should make a noticeable
> improvement in performance while not having as much impact on power.
> But if you want to match the performance governor's performance and are
> less concerned about transient power consumption, you will want to set
> it higher.
>
> Another note: I recommend setting io_is_busy to 1 when using
> sampling_down_factor above 1, as it improves responsiveness to quick
> load transients involving some I/O.  It's also worth considering
> lowering up_threshold to 50 or even down to 15-20.
>
> David C Niemi
>
> Vishwanath Sripathy wrote:
>> Amit,
>>
>> On Tue, Nov 23, 2010 at 8:22 PM, Amit Kucheria <amit.kucheria@xxxxxxxxxx> wrote:
>>
>>> Vishwa,
>>>
>>> Have you had a chance to do some usetime tests with these changes?
>>>
>> I did test USB performance with this and I see ondmeand is 90% close
>> to performance.
>>
>>> It would be interesting to measure the power consumption with and
>>> without these changes.
>>>
>> Power consumption impact can vary from usecase to usecase and extra
>> performance will have some power impact.
>> However in idle scenario, I feel this should not have much impact
>> since ondemand timer is a deferrable timer which means that it does
>> not prevent cpuidle. I will try to measure it for some usecase and
>> compare the power impact.
>>
>> Vishwa
>>
>
--
To unsubscribe from this list: send the line "unsubscribe cpufreq" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Devel]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Forum]     [Linux SCSI]

  Powered by Linux