Re: [reiserfs-dev] Re: Note describing poor dcache utilization under high memory pressure

Daniel Phillips (phillips@bonn-fries.net)
Tue, 29 Jan 2002 00:52:33 +0100


On January 28, 2002 08:25 pm, Hans Reiser wrote:
> If I understand you right, your scheme has the fundamental flaw that one
> dcache entry on a page can keep an entire page full of "slackers" in
> memory, and since there is little correlation in usage between dcache
> entries that happen to get stored on a page, the result is that the
> effectiveness per megabyte of the dcache is decreased by an order of
> magnitude. It would be worse to have one dcache entry per page, but
> maybe not by as much as you might expect.
>
> When objects smaller than a page are stored on a page but not correlated
> in their usage, they need to be aged individually not as a page, and
> then garbage collected as needed.

I had the identical thought - i.e., that this is a job for object aging and
not lru, then I realized that a slight modification to lru can do the job,
that is:

- An access to any object on the page promotes the page to the hot end
of the lru list.

- When it's time to recover a page (or pages) scan from the cold end
towards the hot end, and recover the first page(s) on which all
objects are free.

> Neither the current model nor your
> proposed scheme solve the fundamental problem Josh's measurements prove
> exists.

My suggestion might.

-- 
Daniel
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/