Messages in this thread | | | Date | Mon, 29 Mar 1999 18:03:52 -0500 (EST) | From | "Benjamin C.R. LaHaise" <> | Subject | Re: IDEA: multiple dirty lists in buffer.c |
| |
On Tue, 30 Mar 1999, Rik van Riel wrote:
> On Mon, 29 Mar 1999, Gerard Roudier wrote: > > > By flushing part of each dirty list at a time (minimum 1 buffer), > > and circularily scanning these dirty lists, bdflush will have far > > more chance to feed several devices, before having to wait, than > > using a single dirty list. > > This seems like a winning idea to me.
Except for the part about a 1 buffer minimum -- otherwise a slow device will still be able to throttle the system once its queue is full.
> But why would we ever want to use an LRU list for write-outs? > It would be much better to sort the buffers in the order they're > occupying on the disk, that'll give the lower layers a better > chance of doing some I/O clustering and will reduce search times, > improve throughput, etc...
Yes and no: think of temporary files or even the bitmaps on a busy filesystem. If you order requests before doing LRU on them, these will get flushed out to disk much more frequently than need under normal circumstances. It'll be nice once we have a filesystem that does safe metadata ordering...
-ben
- 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/
| |