Re: [PATCH v10 0/7] feec() energy margin removal

From: Lukasz Luba
Date: Thu Jun 09 2022 - 08:54:00 EST


Hi Vincent,

On 6/7/22 13:32, Vincent Donnefort wrote:
Hi,

Here's a new version of the patch-set to get rid of the energy margin in
feec(). Many thanks to all for the insightful comments I got.

find_energy_efficient() (feec()) will migrate a task to save energy only if
it saves at least 6% of the total energy consumed by the system. This
conservative approach is a problem on a system where a lot of small tasks
create a huge load on the overall: very few of them will be allowed to
migrate to a smaller CPU, wasting a lot of energy. Instead of trying to
determine yet another margin, let's try to remove it.

The first elements of this patch-set are various fixes and improvement that
stabilizes task_util and ensures energy comparison fairness across all CPUs
of the topology. Only once those fixed, we can completely remove the margin
and let feec() aggressively place task and save energy.


I've run this patch set on pixel6 (android-mainline) and gathered energy
values from the meter during the PCmark 3.0.

It looks good, with these patches we have ~10% lower energy usage and
only ~3% lower score.

There are no other issues, everything works fine. Feel free to add:

Tested-by: Lukasz Luba <lukasz.luba@xxxxxxx>

to the whole patch set.

Regards,
Lukasz