Hi, the cpufreq interactive governor computes the maximum target speed of
all CPUs of policy->cpus and sets that speed (at
cpufreq_interactive_speedchange_task).  All platform layer cpufreq
implementations (that I know of) do the same thing underneath as well.


Todd


On Mon, Feb 4, 2013 at 3:36 AM, zhoujie wu <zhouji...@gmail.com> wrote:

> Hi Dear Poynor/All cpufreq owner,
>
> I studied the cpufreq interactive governor recently, and there is per
> cpu timer for each cpu, that means the workload will be queried and
> calculated based on each cpu's workload when timer expires.
>
> I am considering about the case of bad application then workload
> balance is not well issued, may lead to one core is busy, the other is
> idle on SMP system. This may lead to one core want to increase the
> core frequency as it is busy, the other core want to decrease the core
> frequency as it is idle. But SMP system two cores always runs at the
> same frequency, and the behavior will lead to performance drop.
>
> How does interactive handle this case? I know that ondemand governor
> has opportunity to consider the max workload of all online cpu and
> make frequency change decision based on the max workload(policy->cpus
> set to all cpu_mask). Whether interactive will consider the same way?
>
> Could you please help to give some suggestion or let me know if i have
> some misunderstanding of this part?
>
> Thanks.
>
> --
> Zhoujie Wu
>
_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to