Re: Why active list and inactive list?

From: Rik van Riel
Date: Tue Jan 23 2007 - 10:10:54 EST


Peter Zijlstra wrote:
On Mon, 2007-01-22 at 18:03 -0800, Christoph Lameter wrote:
What happened to all those advanced page replacement endeavors?

They are here:
http://programming.kicks-ass.net/kernel-patches/page-replace/2.6.19-pr1/

I should update to .20 soonish.

What is the most promising of those?

I'm still torn between CLOCK-Pro and CART.

CLOCK-Pro is still vulnerable to the cyclic scan use case, since at that
time all pages will have equal distance.

That's fixable. Just bias in favor of the already active
pages and only let pages with a clearly smaller interreference
distance replace them.

CART might be fixable (my CART-r approach) but I still have to study the
full ramifications of that (does it hurt other workloads?).

Your CART-r seems reasonable, too.

Both seems quite capable to distinguish between recency and frequency.
Neither use this horrid swappiness knob to distinguish between mapped
and unmapped pages.

Getting rid of swappiness is a very good thing, IMHO.
I have heard about a few customer workloads that required
changes to swappiness in order for the system to be able
to handle their workload at all.

Systems should not have to be tuned like that...

The main problem I'm having is test cases, notably the lack thereof.
(and lack of time ofcourse ;-)

Yes, this is always a problem. I am not aware of any complete
test cases to test page replacement.

It would be easy to simulate some database by having part of
the dataset be the index and referencing that in an r^2 way,
and the rest being the data which is referenced less. At that
point you can see how taking frequency into account helps.

However, tests like that are simply not complete. They are
not representative of the things most people do with their
system.

Something like AIM-7 suffers from the same problems...

Anybody?

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