Re: [PATCH 2/8] sched/fair: add margin to utilization update

2016-03-18 Thread Michael Turquette
Quoting Steve Muckle (2016-03-15 19:52:59) > 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 > > @

Re: [PATCH 2/8] sched/fair: add margin to utilization update

2016-03-15 Thread Steve Muckle
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

Re: [PATCH 2/8] sched/fair: add margin to utilization update

2016-03-15 Thread Peter Zijlstra
On Tue, Mar 15, 2016 at 02:28:48PM -0700, Michael Turquette wrote: > Quoting Peter Zijlstra (2016-03-15 14:16:14) > > On Sun, Mar 13, 2016 at 10:22:06PM -0700, Michael Turquette wrote: > > > @@ -2840,6 +2853,8 @@ static inline void update_load_avg(struct > > > sched_entity *se, int update_tg) > >

Re: [PATCH 2/8] sched/fair: add margin to utilization update

2016-03-15 Thread Peter Zijlstra
On Sun, Mar 13, 2016 at 10:22:06PM -0700, Michael Turquette wrote: > @@ -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; > +

[PATCH 2/8] sched/fair: add margin to utilization update

2016-03-13 Thread Michael Turquette
Utilization contributions to cfs_rq->avg.util_avg are scaled for both microarchitecture-invariance as well as frequency-invariance. This means that any given utilization contribution will be scaled against the current cpu capacity (cpu frequency). Contributions from long running tasks, whose utiliz