From: Nick Piggin <piggin@cyberone.com.au>
To: Nikita Danilov <Nikita@Namesys.COM>
Cc: Andrew Morton <akpm@osdl.org>, linux-mm@kvack.org
Subject: Re: [BENCHMARKS] Namesys VM patches improve kbuild
Date: Sat, 24 Jan 2004 12:07:03 +1100 [thread overview]
Message-ID: <4011C537.8040104@cyberone.com.au> (raw)
In-Reply-To: <16401.16474.881069.437933@laputa.namesys.com>
Nikita Danilov wrote:
>Nick Piggin writes:
> >
> >
> > Nikita Danilov wrote:
> >
> > >Nick Piggin writes:
> > > >
> > >
> > >[...]
> > >
> > > >
> > > > But those cold mapped pages are basically ignored until the
> > > > reclaim_mapped threshold, however they do continue to have their
> > > > referenced bits cleared - hence page_referenced check should
> > > > become a better estimation when reclaim_mapped is reached, right?
> > >
> > >Right.
> > >
> >
> >
> > I still am a bit skeptical that the LRU lists are actually LRU,
> > however I'm running out of other explainations for your patch's
> > improvements :)
>
>They are not LRU, it is impossible (and useless) to have LRU in the VM.
>
>The problem that we have, and that dont-rotate-active-list tries to
>address, is that two different LRU _approximations_ are maintained
>within the same page queues. This patch tries (lazily) to separate pages
>handled differently so that they don't interfere with each other.
>
Yes, but why doesn't my small patch have the same effect?
It doesn't do it by nicely seperating mapped and non mapped
pages like yours, but it should do something similar: ignore
all mapped pages until the reclaim_mapped threshold.
>
>
> >
> > One ideas I had turns out to have little effect for kbuild, but
> > it might still be worth including?
> >
> > When reclaim_mapped == 0 mapped referenced pages are treated
> > the same way as mapped unreferenced pages, and the referenced
> > info is thrown out. Fixed by not clearing referenced bits.
>
>I think that purpose of having active/inactive lists in the first place
>is to tell hot pages from cold one. Hotness of page is estimated on the
>basis of how frequently it has been accessed _recently_: if page was
>accessed while migrating through the active list---it is hot. When the
>memory pressure increases, the active list is scanned more aggressively
>and the time that the page spends on it (which is the time it has to get
>a reference) decreases, thus adjusting VM's notion of the hotness.
>
>By not clearing the referenced bit, one loses the ability to tell recent
>accesses from the old ones. As a result, all mapped pages that were ever
>accessed from the bootup would appear as hot when reclaim_mapped is
>reached.
>
But by clearing the referenced bit when below the reclaim_mapped
threshold, you're throwing this information away.
Say you have 16 mapped pages on the active list, 8 referenced, 8 not.
You do a !reclaim_mapped scan. Your 16 pages are now in the same
order and none are referenced. You now do a reclaim_mapped scan and
reclaim 8 pages. 4 of them were the referenced ones, 4 were not.
With my change, you would reclaim all 8 non referenced pages.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>
next prev parent reply other threads:[~2004-01-24 1:07 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-01-22 5:43 [BENCHMARKS] Namesys VM patches improve kbuild Nick Piggin
2004-01-22 6:36 ` Andrew Morton
2004-01-22 6:54 ` Nick Piggin
2004-01-22 7:04 ` Andrew Morton
2004-01-22 7:19 ` Nick Piggin
2004-01-22 8:16 ` William Lee Irwin III
2004-01-22 23:32 ` Nick Piggin
2004-01-22 10:35 ` Nikita Danilov
2004-01-22 23:01 ` Nick Piggin
2004-01-23 10:29 ` Nikita Danilov
2004-01-23 12:28 ` Nick Piggin
2004-01-23 15:09 ` Nick Piggin
2004-01-23 15:40 ` Nikita Danilov
2004-01-24 1:07 ` Nick Piggin [this message]
2004-01-26 11:19 ` Nikita Danilov
2004-01-26 11:25 ` Nick Piggin
2004-01-26 12:14 ` Nikita Danilov
2004-01-30 3:48 ` Nick Piggin
2004-01-30 3:56 ` Andrew Morton
2004-01-30 12:00 ` Nikita Danilov
2004-01-23 7:16 ` Nick Piggin
2004-01-23 9:42 ` Nikita Danilov
2004-01-23 12:15 ` Nick Piggin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4011C537.8040104@cyberone.com.au \
--to=piggin@cyberone.com.au \
--cc=Nikita@Namesys.COM \
--cc=akpm@osdl.org \
--cc=linux-mm@kvack.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.