lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <22c8d702-dc11-4e25-bb2d-0d29b0481991@arm.com>
Date: Thu, 4 Jan 2024 16:56:30 +0000
From: Lukasz Luba <lukasz.luba@....com>
To: Dietmar Eggemann <dietmar.eggemann@....com>
Cc: rui.zhang@...el.com, amit.kucheria@...durent.com, rafael@...nel.org,
 linux-kernel@...r.kernel.org, amit.kachhap@...il.com,
 daniel.lezcano@...aro.org, viresh.kumar@...aro.org, len.brown@...el.com,
 pavel@....cz, mhiramat@...nel.org, qyousef@...alina.io, wvw@...gle.com,
 linux-pm@...r.kernel.org
Subject: Re: [PATCH v5 15/23] PM: EM: Optimize em_cpu_energy() and remove
 division



On 1/4/24 16:30, Dietmar Eggemann wrote:
> On 20/12/2023 09:42, Lukasz Luba wrote:
>>
>>
>> On 12/12/23 18:50, Dietmar Eggemann wrote:
>>> On 29/11/2023 12:08, Lukasz Luba wrote:
> 
> [...]
> 
>>>> With this optimization, the em_cpu_energy() should run faster on the Big
>>>> CPU by 1.43x and on the Little CPU by 1.69x.
>>>
>>> Where are those precise numbers are coming from? Which platform was it?
>>
>> That was mainline big.Little board rockpi4 b w/ rockchip 3399, present
> 
> IMHO, you should mention the platform here so people don't wonder.
> 
>> quite a few commercial devices (e.g. chromebooks or plenty other seen in
>> DT). The numbers are from measuring the time it takes to run this
>> function em_cpu_cost() in a loop for mln of times. Thus, the instruction
>> cache and data cache should be hot, but the operation would impact the
>> different score.
> 
> [...]
> 
>>> Can you not keep the existing comment and only change:
>>>
>>> (a) that ps->cap id ps->performance in (2) and
>>>
>>> (b) that:
>>>
>>>             *             ps->power * cpu_max_freq   cpu_util
>>>             *   cpu_nrg = ------------------------ * ---------     (3)
>>>             *                    ps->freq            scale_cpu
>>>
>>>                           <---- (old) ps->cost --->
>>>
>>>       is now
>>>
>>>                   ps->power * cpu_max_freq       1
>>>       ps-> cost = ------------------------ * ----------
>>>                           ps->freq            scale_cpu
>>>
>>>                   <---- (old) ps->cost --->
>>>
>>> and (c) that (4) has changed to:
>>>
>>>            *   pd_nrg = ps->cost * \Sum cpu_util                   (4)
>>>
>>> which avoid the division?
>>>
>>> Less changes is always much nicer since it makes it so much easier to
>>> detect history and review changes.
>>
>> I'm open to change that, but I will have to contact you offline
>> what you mean. This comment section in code is really tricky to
>> handle right.
> 
> OK, the changes you showed me offline LGTM.
> 
> [...]
> 

All good then. Thank you for the comments. I'll send v6.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ