Re: [PATCH] Optimize out pte_chain take three

Daniel Phillips
2002-07-13T14:45:38Z

On Thursday 11 July 2002 00:22, William Lee Irwin III wrote:
> As far as operating regions for page replacement go I see 3 obvious ones:
> (1) lots of writeback with no swap
> (2) churning clean pages with no swap
> (3) swapping

Another big variable is the balance of streaming IO versus program workload.
Within streaming IO there is the read/write balance (starting to get away
from core VM here). There's also the balance of file cache activity vs
anonymous memory. It goes on of course - we have to boil this down to a few
reasonably orthogonal variables.

Your specific load examples can be thought of as specific points in a
two-dimensional test model with two variables:

- Total working set relative to physical memory (should range from
significantly less to significantly more)

- Balance of read accesses vs write accesses

Adding up the above, there are 5 knobs to turn so far. This whole thing
sounds like it can be modeled elegantly by a couple of C programs, one to
generate memory loads and another to generate file loads, or we may be able
to identify an off-the-shelf benchmark program that provides some of the
tunables we need.

Needless to say, we need more than one or two points on each axis. We need
to capture our data in some organized way. How?

Clearly, this benchmarking project as I've described it is starting to blow
up into unreasonable dimensions. I'd like to return to the idea of going
through the original list of advantages and disadvantages item by item and
identifying exactly which variables in our complete test space are relevant.
This lets us set the knobs on our test programs, define the test, and know
which numbers we want to capture/graph.

--
Daniel