All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rik van Riel <riel@redhat.com>
To: Johannes Weiner <hannes@cmpxchg.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Mel Gorman <mgorman@suse.de>, Michal Hocko <mhocko@suse.com>,
	Vladimir Davydov <vdavydov.dev@gmail.com>,
	linux-mm@kvack.org, cgroups@vger.kernel.org,
	linux-kernel@vger.kernel.org, kernel-team@fb.com
Subject: Re: [PATCH] mm: vmscan: fix IO/refault regression in cache workingset transition
Date: Thu, 06 Apr 2017 12:51:16 -0400	[thread overview]
Message-ID: <1491497476.8850.156.camel@redhat.com> (raw)
In-Reply-To: <20170406144922.GA32364@cmpxchg.org>

On Thu, 2017-04-06 at 10:49 -0400, Johannes Weiner wrote:
> On Wed, Apr 05, 2017 at 06:11:04PM -0400, Rik van Riel wrote:
> > On Tue, 2017-04-04 at 18:00 -0400, Johannes Weiner wrote:
> > 
> > > +
> > > +	/*
> > > +	 * When refaults are being observed, it means a new
> > > workingset
> > > +	 * is being established. Disable active list protection
> > > to
> > > get
> > > +	 * rid of the stale workingset quickly.
> > > +	 */
> > 
> > This looks a little aggressive. What is this
> > expected to do when you have multiple workloads
> > sharing the same LRU, and one of the workloads
> > is doing refaults, while the other workload is
> > continuing to use the same working set as before?
> 
> That win was intriguing, but it would be bad if it came out of the
> budget of truly shared LRUs (for which I have no quantification).
> 
> Since this is a regression fix, it would be fair to be conservative
> and use the 50/50 split for transitions here; keep the more adaptive
> behavior for a future optimization.
> 
> What do you think?

Lets try your patch, and see what happens.
After all, it only affects the file cache,
and does not lead to anonymous pages being
swapped out and causing major pain.

A fast workload transition seems like it
could be in everybody's best interest.

If this approach leads to trouble, we can
always try to soften it later.

One potential way of softening would be to
look at the number of refaults, vs the
number of working set re-confirmations, and
determine a target based on that.

WARNING: multiple messages have this Message-ID
From: Rik van Riel <riel@redhat.com>
To: Johannes Weiner <hannes@cmpxchg.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Mel Gorman <mgorman@suse.de>, Michal Hocko <mhocko@suse.com>,
	Vladimir Davydov <vdavydov.dev@gmail.com>,
	linux-mm@kvack.org, cgroups@vger.kernel.org,
	linux-kernel@vger.kernel.org, kernel-team@fb.com
Subject: Re: [PATCH] mm: vmscan: fix IO/refault regression in cache workingset transition
Date: Thu, 06 Apr 2017 12:51:16 -0400	[thread overview]
Message-ID: <1491497476.8850.156.camel@redhat.com> (raw)
In-Reply-To: <20170406144922.GA32364@cmpxchg.org>

On Thu, 2017-04-06 at 10:49 -0400, Johannes Weiner wrote:
> On Wed, Apr 05, 2017 at 06:11:04PM -0400, Rik van Riel wrote:
> > On Tue, 2017-04-04 at 18:00 -0400, Johannes Weiner wrote:
> > 
> > > +
> > > +	/*
> > > +	A * When refaults are being observed, it means a new
> > > workingset
> > > +	A * is being established. Disable active list protection
> > > to
> > > get
> > > +	A * rid of the stale workingset quickly.
> > > +	A */
> > 
> > This looks a little aggressive. What is this
> > expected to do when you have multiple workloads
> > sharing the same LRU, and one of the workloads
> > is doing refaults, while the other workload is
> > continuing to use the same working set as before?
> 
> That win was intriguing, but it would be bad if it came out of the
> budget of truly shared LRUs (for which I have no quantification).
> 
> Since this is a regression fix, it would be fair to be conservative
> and use the 50/50 split for transitions here; keep the more adaptive
> behavior for a future optimization.
> 
> What do you think?

Lets try your patch, and see what happens.
After all, it only affects the file cache,
and does not lead to anonymous pages being
swapped out and causing major pain.

A fast workload transition seems like it
could be in everybody's best interest.

If this approach leads to trouble, we can
always try to soften it later.

One potential way of softening would be to
look at the number of refaults, vs the
number of working set re-confirmations, and
determine a target based on that.

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

  reply	other threads:[~2017-04-06 16:51 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-04 22:00 Johannes Weiner
2017-04-04 22:00 ` Johannes Weiner
2017-04-04 22:07 ` Andrew Morton
2017-04-04 22:07   ` Andrew Morton
2017-04-04 22:29   ` Johannes Weiner
2017-04-04 22:29     ` Johannes Weiner
2017-04-05 22:11 ` Rik van Riel
2017-04-06 14:49   ` Johannes Weiner
2017-04-06 14:49     ` Johannes Weiner
2017-04-06 16:51     ` Rik van Riel [this message]
2017-04-06 16:51       ` Rik van Riel

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=1491497476.8850.156.camel@redhat.com \
    --to=riel@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=cgroups@vger.kernel.org \
    --cc=hannes@cmpxchg.org \
    --cc=kernel-team@fb.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@suse.de \
    --cc=mhocko@suse.com \
    --cc=vdavydov.dev@gmail.com \
    --subject='Re: [PATCH] mm: vmscan: fix IO/refault regression in cache workingset transition' \
    /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

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.