On 8 June 2018 at 14:39, Juri Lelli <juri.le...@redhat.com> wrote: > Hi Vincent, > > On 08/06/18 14:09, Vincent Guittot wrote: >> Now that we have both the dl class bandwidth requirement and the dl class >> utilization, we can detect when CPU is fully used so we should run at max. >> Otherwise, we keep using the dl bandwidth requirement to define the >> utilization of the CPU >> >> Cc: Ingo Molnar <mi...@redhat.com> >> Cc: Peter Zijlstra <pet...@infradead.org> >> Signed-off-by: Vincent Guittot <vincent.guit...@linaro.org> >> --- > > [...] > >> @@ -190,20 +192,24 @@ static unsigned long sugov_aggregate_util(struct >> sugov_cpu *sg_cpu) >> if (rq->rt.rt_nr_running) >> return sg_cpu->max; >> >> - util = sg_cpu->util_dl; >> - util += sg_cpu->util_cfs; >> + util = sg_cpu->util_cfs; >> util += sg_cpu->util_rt; >> >> + if ((util + sg_cpu->util_dl) >= sg_cpu->max) >> + return sg_cpu->max; >> + > > Mmm, won't we run at max (or reach max) with a, say, 100ms/500ms DL task > running alone?
not for a 100ms running task. You have to run more than 320ms to reach max value 100ms/500ms will vary between 0 and 907 Vincent > > Best, > > - Juri