Re: userspace pagecache management tool

From: Rik van Riel
Date: Sat Mar 03 2007 - 20:56:58 EST


Andrew Morton wrote:

Doing a refault thing would help a bit, but stops working at a certain point.
At what point does it stop working?

We need to store that this-page-got-reclaimed info somewhere. I don't know
how space-efficient that is. Did anyone ever do an implementation?

One 32 bit word per evicted page that we keep track of.

Of course, the pages need to be re-read again so there's a potential 100%
hit there, which is in fact not a huge amount in this context. Depends how
often it occurs (all the time when refault is being useful?) versus what we
gain from it.

At this point, when we see that a refaulted page is more
active than the coldest page on the active list, we can
also immediately shrink the active list. That gives the
next inactive page a better chance to get promoted before
it gets evicted.

I am not asking this to be difficult, I just want to get Linux
a VM that does not need to be kludged up every time a distro
ships it to its customers.

We have a communication problem here. Please please please work harder to
get these problems communicated to the MM developers. The only vendor MM
kludge of which I'm aware is a thing which Andrea is working on to address
a large-shm-segment versus bulk-IO problem (yup, database).

If you have enough of an understanding of a problem to be able to develop
and productise a fix then share that info madly, asap.

The problem is that most of the distro patches are
kludges, which we would rather not see again in
future kernels. They tend to work around the problem,
instead of being a proper fix, since reorganizing the
VM in the middle of a release is not an option.

However, incremental small-to-medium changes might
be an option for the upstream kernel, if you are
interested.

I believe one starting point would be a concept that people
cannot shoot holes in any more. That is no guarantee, but
as long as the concept has known holes coding it up is likely
to be a waste of time since the code will need kludges to
deal with the problems later on and we'd be back to square
one.

You mean design it and review the design before coding it? You'll find few
objections there.

Few objections, but sadly also very few people interested in
actually reviewing the design :(

If you can find holes in http://linux-mm.org/PageReplacementDesign
please let me know :)

--
Politics is the struggle between those who want to make their country
the best in the world, and those who believe it already is. Each group
calls the other unpatriotic.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/