Re: [PATCH v2] sched: Fast idling of CPU when system is partially loaded

From: Tim Chen
Date: Mon Jun 23 2014 - 14:59:46 EST


On Mon, 2014-06-23 at 20:50 +0200, Peter Zijlstra wrote:
> On Mon, Jun 23, 2014 at 09:40:45AM -0700, Tim Chen wrote:
>
> > > @@ -5886,7 +5886,7 @@ static inline void update_sg_lb_stats(st
> > >
> > > sgs->group_load += load;
> > > sgs->sum_nr_running += rq->nr_running;
> > > - if (overload && rq->nr_running > 1)
> > > + if (rq->nr_running > 1)
> > > *overload = true;
> > > #ifdef CONFIG_NUMA_BALANCING
> > > sgs->nr_numa_running += rq->nr_numa_running;
>
> > With this change, we'll be returning the overload indicator
> > that we don't use for non-root domains, which will be
> > extra work in sg_lb_stats as it loops through each rq checking
> > the nr_running to update the indicator. I was hoping to avoid
> > that if possible.
>
> What extra work? We already load nr_running and overloaded is on-stack
> and should be quite dirty already due to that.

Okay then. I'll need to modify the v3 patch with the following bits:

- /* only need to update overload indicator for root domain */
- if (!env->sd->parent && rq->nr_running > 1)
+ if (rq->nr_running > 1)
*overload = true;

Just sent v3 patch out before your email reached me.

Tim

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/