All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Ed Tomlinson <edt@aei.ca>
Cc: npiggin@suse.de, Pekka Enberg <penberg@cs.helsinki.fi>,
	linux-kernel@vger.kernel.org, xfs@oss.sgi.com,
	linux-mm@kvack.org, Andi Kleen <andi@firstfloor.org>,
	linux-fsdevel@vger.kernel.org, Christoph Lameter <cl@linux.com>
Subject: Re: Defrag in shrinkers
Date: Mon, 17 May 2010 10:24:44 +1000	[thread overview]
Message-ID: <20100517002444.GJ8120@dastard> (raw)
In-Reply-To: <201005151308.18090.edt@aei.ca>

On Sat, May 15, 2010 at 01:08:17PM -0400, Ed Tomlinson wrote:
> On Friday 14 May 2010 16:36:03 Andi Kleen wrote:
> > Christoph Lameter <cl@linux.com> writes:
> > 
> > > Would it also be possible to add some defragmentation logic when you
> > > revise the shrinkers? Here is a prototype patch that would allow you to
> > > determine the other objects sitting in the same page as a given object.
> > >
> > > With that I hope that you have enough information to determine if its
> > > worth to evict the other objects as well to reclaim the slab page.
> > 
> > I like the idea, it would be useful for the hwpoison code too,
> > when it tries to clean a page.
> 
> If this is done generally we probably want to retune the 'pressure' put on the slab.  The
> whole reason for the callbacks was to keep the 'pressure on the slab proportional to the
> memory pressure (scan rate).  

I don't see that defrag based reclaim changes the concept of
pressure at all. As long as reclaim follows the nr_to_scan
guideline, then it doesn't matter if we do reclaim from the LRU or
reclaim from a list provided by the slab cache....

FWIW, one thing that would be necessary, I think, is to avoid defrag
until a certain level of fragmentation has occurred - we should do
LRU-based reclaim as much as possible, and only trigger defrag-style
reclaim once we hit a trigger (e.g. once the slab is 25% partial
pages).

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

WARNING: multiple messages have this Message-ID (diff)
From: Dave Chinner <david@fromorbit.com>
To: Ed Tomlinson <edt@aei.ca>
Cc: Andi Kleen <andi@firstfloor.org>,
	Christoph Lameter <cl@linux.com>,
	linux-kernel@vger.kernel.org, xfs@oss.sgi.com,
	linux-fsdevel@vger.kernel.org, linux-mm@kvack.org,
	Pekka Enberg <penberg@cs.helsinki.fi>,
	npiggin@suse.de
Subject: Re: Defrag in shrinkers
Date: Mon, 17 May 2010 10:24:44 +1000	[thread overview]
Message-ID: <20100517002444.GJ8120@dastard> (raw)
In-Reply-To: <201005151308.18090.edt@aei.ca>

On Sat, May 15, 2010 at 01:08:17PM -0400, Ed Tomlinson wrote:
> On Friday 14 May 2010 16:36:03 Andi Kleen wrote:
> > Christoph Lameter <cl@linux.com> writes:
> > 
> > > Would it also be possible to add some defragmentation logic when you
> > > revise the shrinkers? Here is a prototype patch that would allow you to
> > > determine the other objects sitting in the same page as a given object.
> > >
> > > With that I hope that you have enough information to determine if its
> > > worth to evict the other objects as well to reclaim the slab page.
> > 
> > I like the idea, it would be useful for the hwpoison code too,
> > when it tries to clean a page.
> 
> If this is done generally we probably want to retune the 'pressure' put on the slab.  The
> whole reason for the callbacks was to keep the 'pressure on the slab proportional to the
> memory pressure (scan rate).  

I don't see that defrag based reclaim changes the concept of
pressure at all. As long as reclaim follows the nr_to_scan
guideline, then it doesn't matter if we do reclaim from the LRU or
reclaim from a list provided by the slab cache....

FWIW, one thing that would be necessary, I think, is to avoid defrag
until a certain level of fragmentation has occurred - we should do
LRU-based reclaim as much as possible, and only trigger defrag-style
reclaim once we hit a trigger (e.g. once the slab is 25% partial
pages).

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

WARNING: multiple messages have this Message-ID (diff)
From: Dave Chinner <david@fromorbit.com>
To: Ed Tomlinson <edt@aei.ca>
Cc: Andi Kleen <andi@firstfloor.org>,
	Christoph Lameter <cl@linux.com>,
	linux-kernel@vger.kernel.org, xfs@oss.sgi.com,
	linux-fsdevel@vger.kernel.org, linux-mm@kvack.org,
	Pekka Enberg <penberg@cs.helsinki.fi>,
	npiggin@suse.de
Subject: Re: Defrag in shrinkers
Date: Mon, 17 May 2010 10:24:44 +1000	[thread overview]
Message-ID: <20100517002444.GJ8120@dastard> (raw)
In-Reply-To: <201005151308.18090.edt@aei.ca>

On Sat, May 15, 2010 at 01:08:17PM -0400, Ed Tomlinson wrote:
> On Friday 14 May 2010 16:36:03 Andi Kleen wrote:
> > Christoph Lameter <cl@linux.com> writes:
> > 
> > > Would it also be possible to add some defragmentation logic when you
> > > revise the shrinkers? Here is a prototype patch that would allow you to
> > > determine the other objects sitting in the same page as a given object.
> > >
> > > With that I hope that you have enough information to determine if its
> > > worth to evict the other objects as well to reclaim the slab page.
> > 
> > I like the idea, it would be useful for the hwpoison code too,
> > when it tries to clean a page.
> 
> If this is done generally we probably want to retune the 'pressure' put on the slab.  The
> whole reason for the callbacks was to keep the 'pressure on the slab proportional to the
> memory pressure (scan rate).  

I don't see that defrag based reclaim changes the concept of
pressure at all. As long as reclaim follows the nr_to_scan
guideline, then it doesn't matter if we do reclaim from the LRU or
reclaim from a list provided by the slab cache....

FWIW, one thing that would be necessary, I think, is to avoid defrag
until a certain level of fragmentation has occurred - we should do
LRU-based reclaim as much as possible, and only trigger defrag-style
reclaim once we hit a trigger (e.g. once the slab is 25% partial
pages).

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

--
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:[~2010-05-17  0:22 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-14  7:24 [PATCH 0/5] Per-superblock shrinkers Dave Chinner
2010-05-14  7:24 ` Dave Chinner
2010-05-14  7:24 ` Dave Chinner
2010-05-14  7:24 ` [PATCH 1/5] inode: Make unused inode LRU per superblock Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24 ` [PATCH 2/5] mm: add context argument to shrinker callback Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24 ` [PATCH 3/5] superblock: introduce per-sb cache shrinker infrastructure Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24 ` [PATCH 4/5] superblock: add filesystem shrinker operations Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24 ` [PATCH 5/5] xfs: make use of new shrinker callout Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14  7:24   ` Dave Chinner
2010-05-14 17:46 ` Defrag in shrinkers (was Re: [PATCH 0/5] Per-superblock shrinkers) Christoph Lameter
2010-05-14 17:46   ` Christoph Lameter
2010-05-14 17:46   ` Christoph Lameter
2010-05-14 20:36   ` Defrag in shrinkers Andi Kleen
2010-05-14 20:36     ` Andi Kleen
2010-05-14 20:36     ` Andi Kleen
2010-05-15 17:08     ` Ed Tomlinson
2010-05-15 17:08       ` Ed Tomlinson
2010-05-15 17:08       ` Ed Tomlinson
2010-05-17  0:24       ` Dave Chinner [this message]
2010-05-17  0:24         ` Dave Chinner
2010-05-17  0:24         ` Dave Chinner
2010-05-15  1:15   ` Defrag in shrinkers (was Re: [PATCH 0/5] Per-superblock shrinkers) Dave Chinner
2010-05-15  1:15     ` Dave Chinner
2010-05-15  1:15     ` Dave Chinner
2010-05-15  1:30 ` [PATCH 0/5] Per-superblock shrinkers Al Viro
2010-05-15  1:30   ` Al Viro
2010-05-15  1:30   ` Al Viro
2010-05-17  0:19   ` Dave Chinner
2010-05-17  0:19     ` Dave Chinner
2010-05-17  0:19     ` Dave Chinner

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=20100517002444.GJ8120@dastard \
    --to=david@fromorbit.com \
    --cc=andi@firstfloor.org \
    --cc=cl@linux.com \
    --cc=edt@aei.ca \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=npiggin@suse.de \
    --cc=penberg@cs.helsinki.fi \
    --cc=xfs@oss.sgi.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.