Re: Kernel 4.7rc3 - Performance drop 30-40% for SPECjbb2005 and SPECjvm2008 benchmarks against 4.6 kernel

From: Peter Zijlstra
Date: Fri Jun 24 2016 - 11:55:21 EST


On Fri, Jun 24, 2016 at 03:42:26PM +0200, Peter Zijlstra wrote:
> On Fri, Jun 24, 2016 at 02:44:07PM +0200, Vincent Guittot wrote:
> > > --- a/kernel/sched/fair.c
> > > +++ b/kernel/sched/fair.c
> > > @@ -2484,7 +2484,7 @@ static inline long calc_tg_weight(struct task_group *tg, struct cfs_rq *cfs_rq)
> > > */
> > > tg_weight = atomic_long_read(&tg->load_avg);
> > > tg_weight -= cfs_rq->tg_load_avg_contrib;
> > > - tg_weight += cfs_rq->load.weight;
> > > + tg_weight += cfs_rq->avg.load_avg;
> >
> > IIUC, you are reverting
> > commit fde7d22e01aa (sched/fair: Fix overly small weight for
> > interactive group entities)
>
> Hurm.. looking at that commit again, that seems to wreck
> effective_load(), since that doesn't compensate.
>
> Maybe I'll remove calc_tg_weight and open code its slightly different
> usages in the two sites.

OK, sorry for not actually posting, but I need to run. Please find the
two patches in:

git://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git sched/urgent