Messages in this thread | | | Date | Wed, 29 Jul 2009 15:58:39 +0100 | From | Mel Gorman <> | Subject | Re: [PATCH 1/1] pagemap clear_refs: modify to specify anon or mapped vma clearing |
| |
On Tue, Jul 28, 2009 at 05:00:54PM -0700, Moussa Ba wrote: > The patch makes the clear_refs more versatile in adding the option to > select anonymous pages or file backed pages for clearing. This > addition has a measurable impact on user space application performance > as it decreases the number of pagewalks in scenarios where one is only > interested in a specific type of page (anonymous or file mapped). >
I think what Andrew might be looking for is a repeat of the use-case for using clear_refs at all and what the additional usecase is that makes this patch beneficial. To be honest, I had to go digging for a bit to find out why clear_refs is used at all and the potential benefits of this patch were initially unclear to me although they were obvious to others. I confess I haven't read the patch closely to determine if it's behaving as advertised or not.
Bonus points for a wee illustration of a script that measures the apparent working set of a process using clear_refs, showing the working set for anon vs filebacked and the difference of measuring just anon versus the full process for example. Such a script could be added to Documentation/vm as I didn't spot any example in there already.
Total aside, is there potential to really mess with LRU aging by abusing clear_refs a lot, partcularly as clear_refs is writable by the process owner? Does it matter?
> > On Tue, Jul 28, 2009 at 4:52 PM, Andrew Morton<akpm@linux-foundation.org> wrote: > > On Tue, 28 Jul 2009 15:52:05 -0700 > > "Moussa A. Ba" <moussa.a.ba@gmail.com> wrote: > > > >> This patch adds anonymous and file backed filters to the clear_refs interface. > >> echo 1 > /proc/PID/clear_refs resets the bits on all pages > >> echo 2 > /proc/PID/clear_refs resets the bits on anonymous pages only > >> echo 3 > /proc/PID/clear_refs resets the bits on file backed pages only > >> Any other value is ignored > > > > The changelog is missing any rationale for making this change. > > Originally we were told that it "makes the clear_refs proc interface a > > bit more versatile", but that's a bit thin. > > > > How do we justify making this change to Linux? What value does it > > have? Can you describe a usage scenario which would help people > > understand the usefulness of the change? > > > > Thanks. > > >
-- Mel Gorman Part-time Phd Student Linux Technology Center University of Limerick IBM Dublin Software Lab -- 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/
| |