Re: [patch] CFS scheduler, -v5

Ingo Molnar
2007-04-23T03:43:59Z

* Nick Piggin <npiggin@suse.de> wrote:

> > note that CFS's "granularity" value is not directly comparable to
> > "timeslice length":
>
> Right, but it does introduce the kbuild regression, [...]

Note that i increased the granularity from 1msec to 5msecs after your
kbuild report, could you perhaps retest kbuild with the default settings
of -v5?

> [...] and as we discussed, this will be only worse on newer CPUs with
> bigger caches or less naturally context switchy workloads.

yeah - but they'll all be quad core, so the SMP timeslice multiplicator
should do the trick. Most of the CFS testers use single-CPU systems.

> > (in -v6 i'll scale the granularity up a bit with the number of CPUs,
> > like SD does. That should get the right result on larger SMP boxes
> > too.)
>
> I don't really like the scaling with SMP thing. The cache effects are
> still going to be significant on small systems, and there are lots of
> non-desktop users of those (eg. clusters).

CFS using clusters will want to tune the granularity up drastically
anyway, to 1 second or more, to maximize throughput. I think a small
default with a scale-up-on-SMP rule is pretty sane. We'll gather some
more kbuild data and see what happens, ok?

> > while i agree it's a tad too finegrained still, I agree with Con's
> > choice: rather err on the side of being too finegrained and lose
> > some small amount of throughput on cache-intense workloads like
> > compile jobs, than err on the side of being visibly too choppy for
> > users on the desktop.
>
> So cfs gets too choppy if you make the effective timeslice comparable
> to mainline?

it doesnt in any test i do, but again, i'm erring on the side of it
being more interactive.

Ingo