Re: [RFC][PATCH] split file and anonymous page queues #3

From: Nikita Danilov
Date: Wed Mar 21 2007 - 18:18:31 EST


Rik van Riel writes:
> Nikita Danilov wrote:
>
> > Generally speaking, multi-queue replacement mechanisms were tried in the
> > past, and they all suffer from the common drawback: once scanning rate
> > is different for different queues, so is the notion of "hotness",
> > measured by scanner. As a result multi-queue scanner fails to capture
> > working set properly.
>
> You realize that the current "single" queue in the 2.6 kernel
> has this problem in a much worse way: when swappiness is low
> and the kernel does not want to reclaim mapped pages, it will
> randomly rotate those pages around the list.

Agree. Some time ago I tried to solve this very problem with
dont-rotate-active-list patch
(http://linuxhacker.ru/~nikita/patches/2.6.12-rc6/2005.06.11/vm_03-dont-rotate-active-list.patch),
but it had problems on its own.

>
> In addition, the referenced bit on unmapped page cache pages
> was ignored completely, making it impossible for the VM to
> separate the page cache working set from transient pages due
> to streaming IO.

Yes, basically FIFO for clean file system pages and FIFO-second-chance
for dirty file pages. Very bad.

>
> I agree that we should put some more negative feedback in
> place if it turns out we need it. I have refault code ready
> that can be plugged into this patch, but I don't want to add
> the overhead of such code if it turns out we do not actually
> need it.

In my humble opinion VM already has too many mechanisms that are
supposed to help in corner cases, but there is little to do with that,
except for major rewrite.

Nikita.

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