From: Fengguang Wu <wfg@mail.ustc.edu.cn>
To: Matt Mackall <mpm@selenic.com>
Cc: Andrew Morton <akpm@osdl.org>,
Jeremy Fitzhardinge <jeremy@goop.org>,
David Rientjes <rientjes@google.com>,
John Berthels <jjberthels@gmail.com>,
Nick Piggin <nickpiggin@yahoo.com.au>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 4/4] maps: /proc/<pid>/pmaps interface - memory maps in granularity of pages
Date: Sun, 19 Aug 2007 08:40:09 +0800 [thread overview]
Message-ID: <387484009.29198@ustc.edu.cn> (raw)
Message-ID: <20070819004008.GA5297@mail.ustc.edu.cn> (raw)
In-Reply-To: <20070818172225.GR30556@waste.org>
On Sat, Aug 18, 2007 at 12:22:26PM -0500, Matt Mackall wrote:
> > > > So VSZ:RSS ratio actually goes up with memory pressure.
> > >
> > > And yes.
> > >
> > > But that's not what I'm talking about. You're likely to have more
> > > holes in your ranges with memory pressure as things that aren't active
> > > get paged or swapped out and back in. And because we're walking the
> > > LRU more rapidly, we'll flip over a lot of the active bits more often
> > > which will mean more output.
> > >
> > > > - page range is a good unit of locality. They are more likely to be
> > > > reclaimed as a whole. So (RSS:page_ranges) wouldn't degrade as much.
> > >
> > > There is that. The relative magnitude of the different effects is
> > > unclear. But it is clear that the worst case for pmap is much worse
> >
> > > than pagemap (two lines per page of RSS?).
> > It's one line per page. No sane app will make vmas proliferate.
>
> Sane apps are few and far between.
Very likely, and they will bloat maps/smaps/pmaps alike :(
> > So let's talk about the worst case.
> >
> > pagemap's data set size is determined by VSZ.
> > 4GB VSZ means 1M PFNs, hence 8MB pagemap data.
> >
> > pmaps's data set size is bounded by RSS hence physical memory.
> > 4GB RSS means up to 1M page ranges, hence ~20M pmaps data.
> > Not too bad :)
>
> Hmmm, I've been misreading the output.
>
> What does it do with nonlinear VMAs?
The implementation gets offset from page_index(page), so will work
the same way in linear/nonlinear VMAs. Depending how one does the
remap_file_ranges() calls, the output lines may be not strictly
ordered by offset, or overlap, or have small page ranges.
next prev parent reply other threads:[~2007-08-19 0:40 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-16 22:05 [PATCH 0/4] process memory footprints in proc/<pid>/[s|p]maps Fengguang Wu
2007-08-16 22:05 ` Fengguang Wu
2007-08-16 22:05 ` [PATCH 1/4] maps: PSS(proportional set size) accounting in smaps Fengguang Wu
2007-08-16 22:05 ` Fengguang Wu
2007-08-17 2:13 ` Matt Mackall
2007-08-17 2:44 ` Fengguang Wu
2007-08-17 2:44 ` Fengguang Wu
2007-08-16 22:05 ` [PATCH 2/4] maps: address based vma walking Fengguang Wu
2007-08-16 22:05 ` Fengguang Wu
2007-08-17 2:16 ` Matt Mackall
2007-08-17 2:54 ` Fengguang Wu
2007-08-17 2:54 ` Fengguang Wu
2007-08-16 22:05 ` [PATCH 3/4] maps: introduce generic_maps_open() Fengguang Wu
2007-08-16 22:05 ` Fengguang Wu
2007-08-16 22:05 ` [PATCH 4/4] maps: /proc/<pid>/pmaps interface - memory maps in granularity of pages Fengguang Wu
2007-08-16 22:05 ` Fengguang Wu
2007-08-17 2:38 ` Matt Mackall
2007-08-17 3:44 ` Fengguang Wu
2007-08-17 3:44 ` Fengguang Wu
2007-08-17 3:56 ` Matt Mackall
2007-08-17 6:47 ` Fengguang Wu
2007-08-17 6:47 ` Fengguang Wu
2007-08-17 16:58 ` Matt Mackall
2007-08-18 2:48 ` Fengguang Wu
2007-08-18 2:48 ` Fengguang Wu
2007-08-18 6:40 ` Matt Mackall
2007-08-18 8:45 ` Fengguang Wu
2007-08-18 8:45 ` Fengguang Wu
2007-08-18 17:22 ` Matt Mackall
2007-08-19 0:40 ` Fengguang Wu [this message]
2007-08-19 0:40 ` Fengguang Wu
2007-08-18 10:31 ` Fengguang Wu
2007-08-18 10:31 ` Fengguang Wu
-- strict thread matches above, loose matches on Subject: below --
2007-08-19 7:54 [PATCH 0/4] process memory footprint info in proc/<pid>/[s|p]maps v2 Fengguang Wu
2007-08-19 7:54 ` [PATCH 4/4] maps: /proc/<pid>/pmaps interface - memory maps in granularity of pages Fengguang Wu
2007-08-19 7:54 ` Fengguang Wu
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=387484009.29198@ustc.edu.cn \
--to=wfg@mail.ustc.edu.cn \
--cc=akpm@osdl.org \
--cc=jeremy@goop.org \
--cc=jjberthels@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mpm@selenic.com \
--cc=nickpiggin@yahoo.com.au \
--cc=rientjes@google.com \
/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.