Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1726002
| From | Patrick Bellasi <patrick.bellasi@arm.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [RFC 1/3] sched/fair: add util_est on top of PELT |
| Date | 2017-09-04 13:20 +0200 |
| Message-ID | <ulXA5-4OA-5@gated-at.bofh.it> (permalink) |
| References | <uik2d-2OI-3@gated-at.bofh.it> <uik2e-2OI-7@gated-at.bofh.it> <ujGtI-6nZ-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 29-Aug 10:06, Pavan Kondeti wrote: > Hi Patrick, > > 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. > > > > The same issue can affect task placement. Indeed, since the task > > utilization is already decayed at wakeup, when the task is enqueued in a > > CPU, this can results in a CPU running a big task as being temporarily > > represented as being almost empty. This leads to a race condition where > > other tasks can be potentially allocated on a CPU which just started to run > > a big task which slept for a relatively long period. > > > > Moreover, the utilization of a task is, by PELT definition, a continuously > > changing metrics. This contributes in making almost instantly outdated some > > decisions based on the value of the PELT's utilization. > > > > For all these reasons, a more stable signal could probably do a better job > > of representing the expected/estimated utilization of a SE/RQ. Such a > > signal can be easily created on top of PELT by still using it as an > > estimator which produces values to be aggregated once meaningful events > > happens. > > > > This patch adds a simple implementation of util_est, a new signal built on > > top of PELT's util_avg where: > > > > util_est(se) = max(se::util_avg, f(se::util_avg@dequeue_times)) > > > > I don't see any wrapper function in this patch that implements this > signal. You want to use this signal in the task placement path as a > replacement of task_util(), right? You right, I should update this changelog which is a bit misleading. What I'm writing above is the way we combine a task's estimated utilization with its util_avg. That's what you find in the code of the following patches, but strictly speacking we do not have a wrapper function. > Thanks, > Pavan Cheers Patrick -- #include <best/regards.h> Patrick Bellasi
Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread
Re: [RFC 1/3] sched/fair: add util_est on top of PELT Pavan Kondeti <pkondeti@codeaurora.org> - 2017-08-29 06:40 +0200 Re: [RFC 1/3] sched/fair: add util_est on top of PELT Patrick Bellasi <patrick.bellasi@arm.com> - 2017-09-04 13:20 +0200
csiph-web