All of lore.kernel.org
 help / color / mirror / Atom feed
From: Minchan Kim <minchan@kernel.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Hugh Dickins <hughd@google.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	Bongkyu Kim <bongkyu.kim@lge.com>
Subject: Re: [PATCH] mm: show proportional swap share of the mapping
Date: Wed, 10 Jun 2015 08:36:11 +0900	[thread overview]
Message-ID: <20150609233611.GA12689@bgram> (raw)
In-Reply-To: <20150609143548.870150b59d78752680c172db@linux-foundation.org>

Hello Andrew,

On Tue, Jun 09, 2015 at 02:35:48PM -0700, Andrew Morton wrote:
> On Tue,  9 Jun 2015 23:43:51 +0900 Minchan Kim <minchan@kernel.org> wrote:
> 
> > For system uses swap heavily and has lots of shared anonymous page,
> > it's very trouble to find swap set size per process because currently
> > smaps doesn't report proportional set size of swap.
> > It ends up that sum of the number of swap for all processes is greater
> > than swap device size.
> > 
> > This patch introduces SwapPss field on /proc/<pid>/smaps.
> > 
> 
> We should be told quite a bit more about the value of this change,
> please.  Use cases, what problems it solves, etc.  Enough to justify
> adding new code to the kernel, enough to justify adding yet another
> userspace interface which must be maintained for ever.

The goal is same with present pages's PSS.

We want to know per-process workingset size for smart memory
management by userland platform memory manager. Our products
use swap(ex, zram) heavily to maximize memory efficiency.
IOW, workingset includes rss + swap.

However, without this feature, it's really hard to figure out
how many each process consumes availabe memory(rss + zram-swap)
if the system has lots of shared anonymous memory(e.g, android).

> 
> > --- a/Documentation/filesystems/proc.txt
> > +++ b/Documentation/filesystems/proc.txt
> >
> > ...
> >
> > @@ -441,7 +442,7 @@ indicates the amount of memory currently marked as referenced or accessed.
> >  a mapping associated with a file may contain anonymous pages: when MAP_PRIVATE
> >  and a page is modified, the file page is replaced by a private anonymous copy.
> >  "Swap" shows how much would-be-anonymous memory is also used, but out on
> > -swap.
> > +swap. "SwapPss" shows process' proportional swap share of this mapping.
> >  
> >  "VmFlags" field deserves a separate description. This member represents the kernel
> >  flags associated with the particular virtual memory area in two letter encoded
> 
> Documentation/filesystems/proc.txt doesn't actually explain what
> "proportional share" means.  A patient reader will hopefully find the
> comment over PSS_SHIFT in fs/proc/task_mmu.c, but that isn't very
> user-friendly.

Okay, I will try to add more comment about PSS in proc.txt
on next spin if you are not against this feature.

Thanks.

> 
> 

--
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:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: Minchan Kim <minchan@kernel.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Hugh Dickins <hughd@google.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	Bongkyu Kim <bongkyu.kim@lge.com>
Subject: Re: [PATCH] mm: show proportional swap share of the mapping
Date: Wed, 10 Jun 2015 08:36:11 +0900	[thread overview]
Message-ID: <20150609233611.GA12689@bgram> (raw)
In-Reply-To: <20150609143548.870150b59d78752680c172db@linux-foundation.org>

Hello Andrew,

On Tue, Jun 09, 2015 at 02:35:48PM -0700, Andrew Morton wrote:
> On Tue,  9 Jun 2015 23:43:51 +0900 Minchan Kim <minchan@kernel.org> wrote:
> 
> > For system uses swap heavily and has lots of shared anonymous page,
> > it's very trouble to find swap set size per process because currently
> > smaps doesn't report proportional set size of swap.
> > It ends up that sum of the number of swap for all processes is greater
> > than swap device size.
> > 
> > This patch introduces SwapPss field on /proc/<pid>/smaps.
> > 
> 
> We should be told quite a bit more about the value of this change,
> please.  Use cases, what problems it solves, etc.  Enough to justify
> adding new code to the kernel, enough to justify adding yet another
> userspace interface which must be maintained for ever.

The goal is same with present pages's PSS.

We want to know per-process workingset size for smart memory
management by userland platform memory manager. Our products
use swap(ex, zram) heavily to maximize memory efficiency.
IOW, workingset includes rss + swap.

However, without this feature, it's really hard to figure out
how many each process consumes availabe memory(rss + zram-swap)
if the system has lots of shared anonymous memory(e.g, android).

> 
> > --- a/Documentation/filesystems/proc.txt
> > +++ b/Documentation/filesystems/proc.txt
> >
> > ...
> >
> > @@ -441,7 +442,7 @@ indicates the amount of memory currently marked as referenced or accessed.
> >  a mapping associated with a file may contain anonymous pages: when MAP_PRIVATE
> >  and a page is modified, the file page is replaced by a private anonymous copy.
> >  "Swap" shows how much would-be-anonymous memory is also used, but out on
> > -swap.
> > +swap. "SwapPss" shows process' proportional swap share of this mapping.
> >  
> >  "VmFlags" field deserves a separate description. This member represents the kernel
> >  flags associated with the particular virtual memory area in two letter encoded
> 
> Documentation/filesystems/proc.txt doesn't actually explain what
> "proportional share" means.  A patient reader will hopefully find the
> comment over PSS_SHIFT in fs/proc/task_mmu.c, but that isn't very
> user-friendly.

Okay, I will try to add more comment about PSS in proc.txt
on next spin if you are not against this feature.

Thanks.

> 
> 

  reply	other threads:[~2015-06-09 23:36 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-09 14:43 [PATCH] mm: show proportional swap share of the mapping Minchan Kim
2015-06-09 14:43 ` Minchan Kim
2015-06-09 21:35 ` Andrew Morton
2015-06-09 21:35   ` Andrew Morton
2015-06-09 23:36   ` Minchan Kim [this message]
2015-06-09 23:36     ` Minchan Kim
2015-06-10  0:06 ` Sergey Senozhatsky
2015-06-10  0:06   ` Sergey Senozhatsky
2015-06-10  0:11   ` Minchan Kim
2015-06-10  0:11     ` Minchan Kim

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=20150609233611.GA12689@bgram \
    --to=minchan@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=bongkyu.kim@lge.com \
    --cc=hughd@google.com \
    --cc=linux-kernel@vger.kernel.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.