Messages in this thread |  | | Date | Tue, 11 Sep 2001 08:12:59 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: linux-2.4.10-pre5 |
| |
On Mon, 10 Sep 2001, Rik van Riel wrote: > > > > Pre-loading your cache always depends on some limited portion of > > prescience. > > OTOH, agressively pre-loading metadata should be ok in a lot > of cases, because metadata is very small, but wastes about > half of our disk time because of the seeks ...
I actually agree to some degree here. The main reason I agree is that meta-data often is (a) known to be physically contiguous (so pre-fecthing is easy and cheap on most hardwate) and (b) meta-data _is_ small, so you don't have to prefetch very much (so pre-fetching is not all that expensive).
Trying to read two or more pages of inode data whenever we fetch an inode might not be a bad idea, for example. Either we fetch a _lot_ of inodes (in which case the prefetching is very likely to get a hit anyway), or we don't (in which case the prefetching is unlikely to hurt all that much either). You don't easily get into a situation where you prefetch a lot without gaining anything.
We might do other kinds of opportunistic pre-fetching, like have "readdir" start prefetching for the inode data it finds. That miht be a win for many loads (and it might be a loss too - there _are_ loads that really only care about the filename, although I suspect they are fairly rare).
Linus
- 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/
|  |