Re: stochastic fair queueing in the elevator [Re: [BENCHMARK] 2.4.20-ck3 / aa / rmap with contest]

Andrea Arcangeli
2003-02-10T11:59:47Z

On Mon, Feb 10, 2003 at 03:48:08AM -0800, Andrew Morton wrote:
> Andrea Arcangeli <andrea@suse.de> wrote:
> >
> > It's the readahead in my tree that allows the reads to use the max scsi
> > command size. It has nothing to do with the max scsi command size
> > itself.
>
> Oh bah.
>
> - *max_ra++ = vm_max_readahead;
> + *max_ra = ((128*4) >> (PAGE_SHIFT - 10)) - 1;
>
>
> Well of course that will get bigger bonnie numbers, for exactly the reasons
> I've explained. It will seek between files after every 512k rather than
> after every 128k.

NOTE: first there is no seek at all in the benchmark we're talking
about, no idea why you think there are seeks. This is not tiobench, this
is bonnie sequential read.

Second I increased it to 4 times 128k very recently, it was used to be
exactly 128k and 512k for scsi. Infact the difference happens in SCSI
not IDE, where going past 128k is helpful, on ide as said the limit of
the command is limited by the hardware anyways.

the only thing you can argue is that the qla is capable of max 256k per
command, and I'm doing readahead of 512k at once, but I don't think it
can matter, like it doesn't matter now that I increased it even more,
all it matters is not to stop at 128k, and to submit the 256k commands.

>
> > You can wait 10 minutes and still such command can't grow. This is why
> > claiming anticipatory scheduling can decrease the need for readahead
> > doesn't make much sense to me, there are important things you just can't
> > achieve by only waiting.
> >
>
> The anticipatory scheduler can easily permit 512k of reading before seeking
> away to another file. In fact it can allow much more, without requiring that
> readhead be cranked up.

This has nothing to do with "the other file". There is a single task in
the system, it is in replacement of /sbin/init, it never forks and it
never opens more than 1 single file called /myfile. Nothing else nothing
more.

anticipatory scheduling can't help in any way that benchmark, period. If
you destroy readahead you won't be able to build the scsi command of the
optimal size and this will hurt. Waiting can't help this.

Andrea