Re: [PATCH]O18.1int

Con Kolivas
2003-08-24T02:40:56Z

On Sun, 24 Aug 2003 07:49, Andrew Morton wrote:
> Con Kolivas <kernel@kolivas.org> wrote:
> > > >It might help if you or a buddy could get set up with volanomark on an
> > > >
> > > > OSDL 4-or-8-way so that you can more closely track the effect of
> > > > your changes on such benchmarks.
> >
> > Ok here goes.
> > This is on 8way:
> >
> > Test4:
> > Average throughput = 11145 messages per second
> >
> > Test4-O18.1:
> > Average throughput = 9860 messages per second
> >
> > Test3-mm3:
> > Average throughput = 9788 messages per second
> >
> >
> > So I grabbed test3-mm3 and started peeling back the patches
> > and found no change in throughput without _any_ of my Oxint patches
> > applied, and just Ingo's A3 patch:
> >
> > Test3-mm3-A3
> > Average throughput = 9889 messages per second
> >
> >
> > Then finally I removed that patch so there were no interactivity
> > patches: Test3-mm3-ni
> > Average throughput = 11052 messages per second
>
> Well that was quick, thanks.
>
> Surely the only reason we see more idle time in this sort of workload is
> because of runqueue imbalance: some CPUs are idle while other CPUs have
> more than one runnable process. That sounds like a bug more than a
> tuning/balancing thing: having no runnable tasks is a sort of binary
> do-something-right-now case.
>
> We should be going across and pullng a task off another CPU synchronously
> as soon as a runqueue is seen to be empty. The code tries to do that so
> hrm.
>
> Ingo just sent the below patch which is related, but doesn't look like it
> will fix it. I'll include this in test4-mm1, RSN.

Just for the record I also tried inlining sched_clock and removing the rdtsc
call entirely (and just getting the value from jiffies) and it made no
measurable impact on performance.

Con