On Tue, 12 Sep 2000, Rik van Riel wrote:
>Why do you always come up with impossible examples?
That's not impossible. impossible != unlikely.
A more regular case is when you have an extremely fast device, were a 1/2
second latency is too much, using 100msec could be just enough to provide
good tiotest numbers and you would get better latency with the current
elevator than with the 1/2 second hardwired value.
>What I'd like to see is an elevator where the settings set
>by the user have a direct influence in the behaviour observed.
I can see direct influence. (more in the past but also now)
>Doing time-based request sorting should give us that behaviour
>and a default of say 1/2 second would work fine for all the
>hard disks and cdrom drives I've seen in the last 6 years.
Well changing that is very easy, you only have to change the unit of
measure w/o changing one bit in the algorithm that is just implemented
indeed.
Just assume the req->elevator_sequence to be calculate in jiffy and in
elevator.c change the check for `!req->elevator_sequence' to
`time_before(req->elevator_sequence, jiffies)'. Then of course change the
initialization of req->elevator_sequence to be done with `jiffies +
elevator->read_latency'. Then also elvtune will talk in jiffies and not in
requests.
>Of course you can dream up an imaginary device where it won't
>work, but in that case there's always the possibility of tuning
>the elevator (like we do right now) ...
I don't like having to tune things by hand for the unlikely case. Note
that also the unit of bytes thing that we have now may have to be tuned
for some case, but it's even less unlikely that you have to do that to get
good throughput.
Andrea
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Fri Sep 15 2000 - 21:00:18 EST