Messages in this thread | | | From | Daniel Phillips <> | Subject | Re: [reiserfs-dev] Re: Note describing poor dcache utilization under high memory pressure | Date | 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/
| |