public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Pierre Gondois <pierre.gondois@arm.com>
To: linux-kernel@vger.kernel.org, xuewen.yan@unisoc.com,
	qperret@qperret.net, Lukasz.Luba@arm.com,
	dietmar.eggemann@arm.com
Cc: Vincent.Donnefort@arm.com, mingo@redhat.com,
	peterz@infradead.org, juri.lelli@redhat.com,
	vincent.guittot@linaro.org, rostedt@goodmis.org,
	bsegall@google.com, mgorman@suse.de, bristot@redhat.com
Subject: Re: [PATCH v3 0/2] sched/fair: find_energy_efficient_cpu() enhancements
Date: Tue, 4 May 2021 10:10:45 +0100	[thread overview]
Message-ID: <d06dbab5-60cf-a558-0ded-2d224aca89fd@arm.com> (raw)
In-Reply-To: <20210504090743.9688-1-Pierre.Gondois@arm.com>

Hi Xuewen,

Please let me know if you have some comments,
Pierre

On 5/4/21 10:07 AM, Pierre Gondois wrote:
> V2:
>   - Split the patch in 2. [Quentin]
>   - Add testing results to the cover-letter. [Dietmar]
>   - Put back 'rcu_read_unlock()' to unlock the rcu
>     earlier. [Dietmar]
>   - Various comments. [Dietmar/Quentin]
>
> V3:
>   - Layout/phrasing. [Dietmar]
>
> This patchset prevents underflows in find_energy_efficient_cpu().
> This is done in the second patch:
> sched/fair: Fix negative energy delta in find_energy_efficient_cpu()
>
> The first patch:
> sched/fair: Only compute base_energy_pd if necessary
> prevents an unnecessary call to compute_energy() if no CPU is available
> in a performance domain (pd).
> When looping over the pds, it also allows to gather the calls
> to compute_energy(), reducing the chances of having utilization signals
> being concurrently updated and having a 'negative delta'.
>
> The energy tests of the initial EAS enablement at:
> https://lkml.kernel.org/r/20181203095628.11858-1-quentin.perret@arm.com
> have been executed using LISA on a Juno-r2 (2xA57 + 4xA53).
>
> To recall the test:
> "10 iterations of between 10 and 50 periodic rt-app tasks (16ms period,
> 5% duty-cycle) for 30 seconds with energy measurement. Unit is Joules.
> The goal is to save energy, so lower is better."
> "Energy is measured with the onboard energy meter. Numbers include
> consumption of big and little CPUs."
>
> +----------+-----------------+-------------------------+
> |          | Without patches | With patches            |
> +----------+--------+--------+------------------+------+
> | Tasks nb |  Mean  |    CI* | Mean             |  CI* |
> +----------+--------+--------+------------------+------+
> |       10 |   6.57 |   0.24 |   6.46 (-1.63%)  | 0.27 |
> |       20 |  12.44 |   0.21 |  12.44 (-0.01%)  | 0.14 |
> |       30 |  19.10 |   0.78 |  18.75 (-1.85%)  | 0.15 |
> |       40 |  27.27 |   0.53 |  27.35 (+0.31%)  | 0.33 |
> |       50 |  36.55 |   0.42 |  36.28 (-0.74%)  | 0.42 |
> +----------+-----------------+-------------------------+
> CI: confidence interval
>
> For each line, the intervals of values w/ w/o the patches are
> overlapping (consider Mean +/- CI). Thus, the energy results shouldn't
> have been impacted.
>
> Pierre Gondois (2):
>    sched/fair: Only compute base_energy_pd if necessary
>    sched/fair: Fix negative energy delta in find_energy_efficient_cpu()
>
>   kernel/sched/fair.c | 68 ++++++++++++++++++++++++++-------------------
>   1 file changed, 39 insertions(+), 29 deletions(-)
>

  parent reply	other threads:[~2021-05-04  9:10 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-04  9:07 [PATCH v3 0/2] sched/fair: find_energy_efficient_cpu() enhancements Pierre Gondois
2021-05-04  9:07 ` [PATCH v3 1/2] sched/fair: Only compute base_energy_pd if necessary Pierre Gondois
2021-05-12 10:28   ` [tip: sched/core] " tip-bot2 for Pierre Gondois
2021-05-04  9:07 ` [PATCH v3 2/2] sched/fair: Fix negative energy delta in find_energy_efficient_cpu() Pierre Gondois
2021-05-12 10:28   ` [tip: sched/core] " tip-bot2 for Pierre Gondois
2021-05-04  9:10 ` Pierre Gondois [this message]
2021-05-04 11:49   ` [PATCH v3 0/2] sched/fair: find_energy_efficient_cpu() enhancements Xuewen Yan
2021-05-04  9:59 ` Peter Zijlstra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d06dbab5-60cf-a558-0ded-2d224aca89fd@arm.com \
    --to=pierre.gondois@arm.com \
    --cc=Lukasz.Luba@arm.com \
    --cc=Vincent.Donnefort@arm.com \
    --cc=bristot@redhat.com \
    --cc=bsegall@google.com \
    --cc=dietmar.eggemann@arm.com \
    --cc=juri.lelli@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mgorman@suse.de \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=qperret@qperret.net \
    --cc=rostedt@goodmis.org \
    --cc=vincent.guittot@linaro.org \
    --cc=xuewen.yan@unisoc.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox