[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56E8CA8B.8080506@linaro.org>
Date: Tue, 15 Mar 2016 19:52:59 -0700
From: Steve Muckle <steve.muckle@...aro.org>
To: Michael Turquette <mturquette@...libre.com>, peterz@...radead.org,
rjw@...ysocki.net
Cc: linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
Juri.Lelli@....com, morten.rasmussen@....com,
dietmar.eggemann@....com, vincent.guittot@...aro.org,
Michael Turquette <mturquette+renesas@...libre.com>
Subject: Re: [PATCH 2/8] sched/fair: add margin to utilization update
On 03/13/2016 10:22 PM, Michael Turquette wrote:
> +unsigned long cfs_capacity_margin = CAPACITY_MARGIN_DEFAULT;
> +
> #ifdef CONFIG_CFS_BANDWIDTH
> /*
> * Amount of runtime to allocate from global (tg) to local (per-cfs_rq) pool
> @@ -2840,6 +2853,8 @@ static inline void update_load_avg(struct sched_entity *se, int update_tg)
>
> if (cpu == smp_processor_id() && &rq->cfs == cfs_rq) {
> unsigned long max = rq->cpu_capacity_orig;
> + unsigned long cap = cfs_rq->avg.util_avg *
> + cfs_capacity_margin / max;
Doesn't rq->cpu_capacity_orig get scaled per the microarch invariance?
This would mean that the margin we're applying here would differ based
on that.
I'd expect that the margin would be * (cfs_capacity_margin /
SCHED_CAPACITY_SCALE) which would then reduce the division into a shift.
Powered by blists - more mailing lists