lkml.org 
[lkml]   [2021]   [Nov]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v3 4/5] cpufreq: qcom-cpufreq-hw: Use new thermal pressure update function
From
Date


On 11/8/21 9:12 AM, Lukasz Luba wrote:
...snip

>>
>>
>
> Well, I think the issue is broader. Look at the code which
> calculate this 'capacity'. It's just a multiplication & division:
>
> max_capacity = arch_scale_cpu_capacity(cpu); // =1024 in our case
> capacity = mult_frac(max_capacity, throttled_freq,
>         policy->cpuinfo.max_freq);
>
> In the reported by Steev output from sysfs cpufreq we know
> that the value of 'policy->cpuinfo.max_freq' is:
> /sys/devices/system/cpu/cpu5/cpufreq/cpuinfo_max_freq:2956800
>
> so when we put the values to the equation we get:
> capacity = 1024 * 2956800 / 2956800; // =1024
> The 'capacity' will be always <= 1024 and this check won't
> be triggered:
>
> /* Don't pass boost capacity to scheduler */
> if (capacity > max_capacity)
>     capacity = max_capacity;
>
>
> IIUC you original code, you don't want to have this boost
> frequency to be treated as 1024 capacity. The reason is because
> the whole capacity machinery in arch_topology.c is calculated based
> on max freq value = 2841600,
> so the max capacity 1024 would be pinned to that frequency
> (according to Steeve's log:
> [   22.552273] THERMAL_PRESSURE: max_freq(2841) < capped_freq(2956) for
> CPUs [4-7] )

Hi Lukasz,

Yes you are right in that I was using policy->cpuinfo.max_freq where as
I should have used freq_factor. So now that you are using freq_factor,
it makes sense to cap the capacity at the max capacity calulated by the
scheduler.

I agree that the problem is complex because at some point we should look
at rebuilding the topology based on changes to policy->cpuinfo.max_freq.

>
>
> Having all this in mind, the multiplication and division in your
> original code should be done:
>
> capacity = 1024 * 2956800 / 2841600; // = 1065
>
> then clamped to 1024 value.
>
> My change just unveiled this division issue.
>
> With that in mind, I tend to agree that I should have not
> rely on passed boost freq value and try to apply your suggestion check.
> Let me experiment with that...
>
> Regards,
> Lukasz

--
Warm Regards
Thara (She/Her/Hers)

\
 
 \ /
  Last update: 2021-11-08 22:23    [W:0.071 / U:0.504 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site