lkml.org 
[lkml]   [1999]   [Jul]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [RFC] - Some notions that I would like comments on
Hi,

On Mon, 19 Jul 1999 11:08:32 -0400 (EDT), Chuck Lever <cel@monkey.org>
said:

> i understand why a little readbehind can be effective in the random
> case, and even have some experimental evidence that this is true. have
> you measured this or do you have a study on it?

Not much --- simply the observation that clustered readaround appears to
be faster than strict readahead for binary paging.

> i'm not convinced that significant amounts of readbehind are effective
> -- diminishing returns and all that.

For binaries, you can turn it around the other way --- it is no truer to
assert that significant readahead is better than readbehind, once you
are doing enough readahead to read in the majority of functions in one
go. When code jumps between functions, it ends up doing so backwards
about as much as forwards, in the absense of explicit optimisations.

Therefore, the current code doesn't care whether the readaround is
backwards or forwards: rather, it is optimised for a different goal,
which is to minimise the total number of IOs necessary to completely
page in a section of a file. With clustered IOs, nearby page faults
will result in the caching of an entire contiguous chunk of the file
with no gaps.

> plus, libraries aren't the only thing that are mapped. what would the
> best readaround strategy be for a mapped randomly accessed sleepycat index
> file, for instance?

A very good question. Does anyone want to try this?

> yes, i've considered that. but i'd like some discussion about what you
> and everyone else here thinks would be interesting to try. i know what
> i'd like to try, but i'm a new kid.

The clustered mechanism is definitely used by some other OSes for
paging. That, and strict readahead, seem the two best basic mechanisms
to try, but the principle of triggering the next cluster readahead in
advance of actually using it, for sequentially accessed memory maps, is
still a valid extension to the existing simple clustering.

--Stephen

-
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/

\
 
 \ /
  Last update: 2005-03-22 13:53    [W:0.055 / U:0.048 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site