From: Patrick Bellasi <patrick.bellasi@arm.com>
To: Pavan Kondeti <pkondeti@codeaurora.org>
Cc: LKML <linux-kernel@vger.kernel.org>,
linux-pm@vger.kernel.org, Ingo Molnar <mingo@redhat.com>,
Peter Zijlstra <peterz@infradead.org>,
"Rafael J . Wysocki" <rafael.j.wysocki@intel.com>,
Paul Turner <pjt@google.com>,
Vincent Guittot <vincent.guittot@linaro.org>,
John Stultz <john.stultz@linaro.org>,
Morten Rasmussen <morten.rasmussen@arm.com>,
Dietmar Eggemann <dietmar.eggemann@arm.com>,
Juri Lelli <juri.lelli@arm.com>,
Tim Murray <timmurray@google.com>, Todd Kjos <tkjos@android.com>,
Andres Oportus <andresoportus@google.com>,
Joel Fernandes <joelaf@google.com>,
Viresh Kumar <viresh.kumar@linaro.org>
Subject: Re: [RFC 1/3] sched/fair: add util_est on top of PELT
Date: Mon, 4 Sep 2017 11:59:40 +0100 [thread overview]
Message-ID: <20170904105940.GB2618@e110439-lin> (raw)
In-Reply-To: <CAEU1=PmgWSi7hrLpQ2nQUi_Ki5Z6JsJMi-fV5ke1B26aC0kqSg@mail.gmail.com>
On 29-Aug 12:11, Pavan Kondeti wrote:
> On Fri, Aug 25, 2017 at 3:50 PM, Patrick Bellasi
> <patrick.bellasi@arm.com> wrote:
> > The util_avg signal computed by PELT is too variable for some use-cases.
> > For example, a big task waking up after a long sleep period will have its
> > utilization almost completely decayed. This introduces some latency before
> > schedutil will be able to pick the best frequency to run a task.
> >
>
> <snip>
>
> > diff --git a/include/linux/sched.h b/include/linux/sched.h
> > index c28b182c9833..8d7bc55f68d5 100644
> > --- a/include/linux/sched.h
> > +++ b/include/linux/sched.h
> > @@ -26,6 +26,7 @@
> > #include <linux/signal_types.h>
> > #include <linux/mm_types_task.h>
> > #include <linux/task_io_accounting.h>
> > +#include <linux/average.h>
> >
> > /* task_struct member predeclarations (sorted alphabetically): */
> > struct audit_context;
> > @@ -277,6 +278,16 @@ struct load_weight {
> > u32 inv_weight;
> > };
> >
> > +/**
> > + * Utilizaton's Exponential Weighted Moving Average (EWMA)
> > + *
> > + * Support functions to track an EWMA for the utilization of SEs and RQs. New
> > + * samples will be added to the moving average each time a task completes an
> > + * activation. Thus the weight is chosen so that the EWMA wil be relatively
> > + * insensitive to transient changes to the task's workload.
> > + */
> > +DECLARE_EWMA(util, 0, 4);
> > +
> > /*
>
> Should the factor be 1 instead of 0? i.e 25% contribution from the
> recent sample.
The weight of new samples is represented by the third parameter which
assigns them 1/4 (25%) weight.
That zero you are pointing out defines the "precision" in terms of
bits for the fractional part. In this first prototype I've just
disregarded any fractional precision but, considering that we use
this, EWMA to aggregate utilization values, I should probably better
set it to SCHED_CAPACITY_SHIFT.
> Thanks,
> Pavan
Cheers Patrick
--
#include <best/regards.h>
Patrick Bellasi
next prev parent reply other threads:[~2017-09-04 10:59 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-25 10:20 [RFC 0/3] Utilization estimation for FAIR tasks Patrick Bellasi
2017-08-25 10:20 ` [RFC 1/3] sched/fair: add util_est on top of PELT Patrick Bellasi
2017-08-29 4:36 ` Pavan Kondeti
2017-09-04 11:13 ` Patrick Bellasi
2017-08-29 6:41 ` Pavan Kondeti
2017-09-04 10:59 ` Patrick Bellasi [this message]
2017-08-25 10:20 ` [RFC 2/3] sched/fair: use util_est in LB Patrick Bellasi
2017-08-29 4:45 ` Pavan Kondeti
2017-09-04 14:18 ` Patrick Bellasi
2017-09-04 14:59 ` Pavan Kondeti
2017-08-25 10:20 ` [RFC 3/3] sched/cpufreq_schedutil: use util_est for OPP selection Patrick Bellasi
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=20170904105940.GB2618@e110439-lin \
--to=patrick.bellasi@arm.com \
--cc=andresoportus@google.com \
--cc=dietmar.eggemann@arm.com \
--cc=joelaf@google.com \
--cc=john.stultz@linaro.org \
--cc=juri.lelli@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=morten.rasmussen@arm.com \
--cc=peterz@infradead.org \
--cc=pjt@google.com \
--cc=pkondeti@codeaurora.org \
--cc=rafael.j.wysocki@intel.com \
--cc=timmurray@google.com \
--cc=tkjos@android.com \
--cc=vincent.guittot@linaro.org \
--cc=viresh.kumar@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