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