Messages in this thread | | | Date | Sat, 28 Apr 2007 18:37:40 +0200 | From | Ingo Molnar <> | Subject | Re: [ext3][kernels >= 2.6.20.7 at least] KDE going comatose when FS is under heavy write load (massive starvation) |
| |
* Linus Torvalds <torvalds@linux-foundation.org> wrote:
> Even with a good software IO scheduler, when you have disks that do > tagged queueing, if you fill up the disk queue with a few dozen > (depends on the disk what the queue limit is) huge write requests, it > doesn't really matter if the _software_ queuing then gives a big > advantage to reads coming in. They'll _still_ be waiting for a long > time, especially since you don't know what the disk firmware is going > to do.
by far the largest advantage of tagged queueing is when we go from 1 pending request to 2 pending requests. The rest helps too for certain workloads (especially benchmarks), but if the IRQ handling is fast enough, having just 2 is more than enough to get 80% of the advantage of say of hardware-queue with a depth of 64.
So perhaps if there's any privileged reads going on then we should limit writes to a depth of 2 at most, with some timeout mechanism that would gradually allow the deepening of the hardware queue, as long as no highprio reads come inbetween? With 2 pending requests and even assuming worst-case seeks the user-visible latency would be on the order of 20-30 msecs, which is at the edge of human perception. The problem comes when a hardware queue of 32-64 entries starves that one highprio read which then results in a 2+ seconds latency.
Ingo - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |