Re: On optimising the scheduler for large run queues

From: Mark Hahn (hahn@coffee.psychology.mcmaster.ca)
Date: Tue Feb 01 2000 - 23:23:45 EST


On Tue, 1 Feb 2000, Tim Magill wrote:
> Would non-trivial process pipelines create fairly fast switch rates
> and possibly deep RQ's? It seems to me that one of the early ANSI C
> compilers was a 6 stage compiler implementing each phase of
> compilation in a separate binary. Pipeline the stages and you have
> six process running. Obviously this compiler was less optimal than a
> 2 pass compiler, but it would have been easy to debug.

gcc is often (as in all kernel builds) run with -pipe, which does this.
and no, it doesn't create a long runqueue simply because each stage does real
work. that's what's missing from the two (stupid) benchmarks exhibited so
far as a reason to change the scheduler. here's another fine example:
   dd if=/dev/zero bs=1024k count=1k | cat | cat | cat | cat | wc; uptime

on my machine, it caused about 30 seconds of 45-50K cs/second, and a load
average that eventually (with count=30k) approached only 1.9...

regards, mark hahn

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



This archive was generated by hypermail 2b29 : Mon Feb 07 2000 - 21:00:07 EST