On 20/04/18 09:31, Quentin Perret wrote: > On Friday 20 Apr 2018 at 01:14:35 (-0700), Joel Fernandes wrote: > > On Fri, Apr 20, 2018 at 1:13 AM, Joel Fernandes <joe...@google.com> wrote: > > > On Wed, Apr 18, 2018 at 4:17 AM, Quentin Perret <quentin.per...@arm.com> > > > wrote: > > >> On Friday 13 Apr 2018 at 16:56:39 (-0700), Joel Fernandes wrote:
[...] > > >>> > > >>> I'm wondering if it makes sense for considering scenarios whether > > >>> other classes cause CPUs in the domain to go above the tipping point. > > >>> Then in that case also, it makes sense to not to do EAS in that domain > > >>> because of the overutilization. > > >>> > > >>> I guess task_fits using cpu_util which is PELT only at the moment... > > >>> so may require some other method like aggregation of CFS PELT, with > > >>> RT-PELT and DL running bw or something. > > >>> > > >> > > >> So at the moment in cpu_overutilized() we comapre cpu_util() to > > >> capacity_of() which should include RT and IRQ pressure IIRC. But > > >> you're right, we might be able to do more here... Perhaps we > > >> could also use cpu_util_dl() which is available in sched.h now ? > > > > > > Yes, should be Ok, and then when RT utilization stuff is available, > > > then that can be included in the equation as well (probably for now > > > you could use rt_avg). > > > > > > Another crazy idea is to check the contribution of higher classes in > > > one-shot with (capacity_orig_of - capacity_of) although I think that > > > method would be less instantaneous/accurate. > > > > Just to add to the last point, the capacity_of also factors in the IRQ > > contribution if I remember correctly, which is probably a good thing? > > > > I think so too yes. But actually, since we compare cpu_util() to > capacity_of() in cpu_overutilized(), the current implementation should > already be fairly similar to the "capacity_orig_of - capacity_of" > implementation you're suggesting I guess. > And I agree that when Vincent's RT PELT patches get merged we should > probably use that :-) Mind that rt_avg contains DL contribution as well ATM https://elixir.bootlin.com/linux/v4.17-rc1/source/kernel/sched/deadline.c#L1182 So you shouldn't add newer DL utilization signal to it. OTOH, using RT PELT (once in) is of course to be preferred. Best, - Juri