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,
Pierre Gondois <Pierre.Gondois@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: [PATCH v3 0/2] sched/fair: find_energy_efficient_cpu() enhancements
Date: Tue, 4 May 2021 10:07:41 +0100 [thread overview]
Message-ID: <20210504090743.9688-1-Pierre.Gondois@arm.com> (raw)
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(-)
--
2.17.1
next reply other threads:[~2021-05-04 9:08 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-04 9:07 Pierre Gondois [this message]
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 ` [PATCH v3 0/2] sched/fair: find_energy_efficient_cpu() enhancements Pierre Gondois
2021-05-04 11:49 ` 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=20210504090743.9688-1-Pierre.Gondois@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