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