Re: [PATCH] sched: minor optimizations in wake_affine andselect_task_rq_fair

From: Amit K. Arora
Date: Tue Sep 30 2008 - 07:40:25 EST


On Tue, Sep 30, 2008 at 09:01:58AM +0200, Ingo Molnar wrote:
>
> * Chris Friesen <cfriesen@xxxxxxxxxx> wrote:
>
> > Amit K. Arora wrote:
> >> Hello,
> >>
> >> Please consider this patch. It makes a few minor changes to
> >> sched_fair.c.
> >>
> >>
> >> sched: Minor optimizations in wake_affine and select_task_rq_fair
> >>
> >> This patch does following:
> >> o Reduces the number of arguments to wake_affine().
> >
> > At what point is it cheaper to pass items as args rather than
> > recalculating them? If reducing the number of args is desirable, what
> > about removing the "this_cpu" and "prev_cpu" args and recalculating
> > them in wake_affine()?
>
> it's usually not worth it, especially if it leads to duplicated
> calculations (and code) like:
>
> + unsigned int imbalance = 100 + (this_sd->imbalance_pct - 100) / 2;
>
> gcc will optimize it away because it's all static functions, but still.

Ok. I will resubmit the patch with other suggested changes only. It
won't try to reduce wake_affine's arguments (besides the first argument
"rq" which is not being used at all).

Regards,
Amit Arora
>
> 'size kernel/sched.o' should be a good guideline: if the .o's text
> section gets smaller due to a patch it usually gets faster as well.
>
> Ingo
--
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/