From: Vincent Donnefort <vincent.donnefort@arm.com>
To: Quentin Perret <qperret@google.com>
Cc: peterz@infradead.org, mingo@redhat.com,
vincent.guittot@linaro.org, dietmar.eggemann@arm.com,
linux-kernel@vger.kernel.org, patrick.bellasi@matbug.net,
valentin.schneider@arm.com
Subject: Re: [PATCH] sched/fair: Fix task utilization accountability in cpu_util_next()
Date: Mon, 22 Feb 2021 11:36:03 +0000 [thread overview]
Message-ID: <20210222113602.GA286874@e120877-lin.cambridge.arm.com> (raw)
In-Reply-To: <YDODN1rnTqfTQOug@google.com>
Hi Quentin,
On Mon, Feb 22, 2021 at 10:11:03AM +0000, Quentin Perret wrote:
> Hey Vincent,
>
> On Monday 22 Feb 2021 at 09:54:01 (+0000), vincent.donnefort@arm.com wrote:
> > From: Vincent Donnefort <vincent.donnefort@arm.com>
> >
> > Currently, cpu_util_next() estimates the CPU utilization as follows:
> >
> > max(cpu_util + task_util,
> > cpu_util_est + task_util_est)
>
> s/task_util_est/_task_util_est
>
> This is an important difference.
>
> >
> > This is an issue when making a comparison between CPUs, as the task
> > contribution can be either:
> >
> > (1) task_util_est, on a mostly idle CPU, where cpu_util is close to 0
> > and task_util_est > cpu_util.
> > (2) task_util, on a mostly busy CPU, where cpu_util > task_util_est.
>
> I don't understand how this is an issue, this is by design with util-est
> no?
>
> Note that cpu_util_next() tries to accurately predict what cpu_util(@cpu)
> will be once @p is enqueued on @dst_cpu. There should be no policy
> decision here, we just reproduce the enqueue aggreagation -- see
> util_est_enqueue() and cpu_util().
>
> Could you please give an example where you think cpu_util_next()
> computes the wrong value?
Here's with real life numbers.
The task: util_avg=3 (1) util_est=11 (2)
pd0 (CPU-0, CPU-1, CPU-2)
cpu_util_next(CPU-0, NULL): 7
cpu_util_next(CPU-1, NULL): 3
cpu_util_next(CPU-2, NULL): 0 <- Most capacity, try to place task here.
cpu_util_next(CPU-2, task): 0 + 11 (2)
pd1 (CPU-3):
cpu_util_next(CPU-3, NULL): 77
cpu_util_next(CPU-3, task): 77 + 3 (1)
On pd0, the task contribution is 11. On pd1, it is 3. When computing the energy
deltas, pd0's is likely to be higher than pd1's, only because the task
contribution is higher for one comparison than the other.
--
Vincent
>
> Thanks,
> Quentin
next prev parent reply other threads:[~2021-02-22 11:37 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-22 9:54 vincent.donnefort
2021-02-22 10:11 ` Quentin Perret
2021-02-22 11:36 ` Vincent Donnefort [this message]
2021-02-22 12:23 ` Quentin Perret
2021-02-22 15:01 ` Vincent Donnefort
2021-02-22 15:58 ` Quentin Perret
2021-02-22 16:23 ` Quentin Perret
2021-02-22 16:39 ` Vincent Donnefort
2021-02-22 16:43 ` Quentin Perret
2021-02-23 14:47 ` Dietmar Eggemann
2021-02-22 16:31 ` Vincent Donnefort
2021-02-22 16:35 ` Quentin Perret
2021-02-23 14:44 ` Dietmar Eggemann
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=20210222113602.GA286874@e120877-lin.cambridge.arm.com \
--to=vincent.donnefort@arm.com \
--cc=dietmar.eggemann@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=patrick.bellasi@matbug.net \
--cc=peterz@infradead.org \
--cc=qperret@google.com \
--cc=valentin.schneider@arm.com \
--cc=vincent.guittot@linaro.org \
/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
all inboxes | Powered by JetHome®