Messages in this thread | | | Date | Tue, 20 Jul 1999 01:31:18 +0200 | From | Jamie Lokier <> | Subject | Re: clustering page-ins |
| |
Rik van Riel wrote: > By defining the top and bottom 1/8th of each zone a 'border' > page and loading the next zone when a page in the border zone > is loaded (AND the requested page is already in memory, meaning > we have already done readahead on the current zone and it proved > to be succesful), THEN we read in the zone nextdoor. > > Because the previous readahead was (apparently) succesful, we > know we have a large chance of reading in data we will actually > need PLUS the algorithm works for both read-ahead and read-behind > (and zoned data files where the zones exceed cluster size).
Yes this is exactly what I'm describing except that I only bothered with the readahead case, not readbehind, and I mention self-tuning the cluster size, since this is not the same as the optimal size for random access and it depends on how fast the process is sweeping the address space.
Having two zones instead of one introduces another test into the soft fault fast path, which is bad. If we keep the clusters aligned, we could introduce a new page bit which is only set for pages that can possibly be in those boundary zones. Use that to short-circuit the longer tests for most soft fault pages.
-- Jamie
- 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/
| |