linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Christoph Lameter <clameter@sgi.com>
To: Andrew Morton <akpm@google.com>
Cc: Ethan Solomita <solo@google.com>,
	linux-mm@kvack.org, LKML <linux-kernel@vger.kernel.org>,
	a.p.zijlstra@chello.nl
Subject: Re: [RFC 1/7] cpuset write dirty map
Date: Wed, 27 Jun 2007 05:44:56 -0700 (PDT)	[thread overview]
Message-ID: <Pine.LNX.4.64.0706270527010.26731@schroedinger.engr.sgi.com> (raw)
In-Reply-To: <20070627021408.493812fe.akpm@google.com>

On Wed, 27 Jun 2007, Andrew Morton wrote:

> I'm more concerned about all of Mel's code in -mm actually.  I don't recall
> anyone doing a full review recently and I'm still not sure that this is the
> overall direction in which we wish to go.  Last time I asked this everyone
> seemed a bit waffly and non-committal.

I have looked over this several times lately and it all seems quite okay. 
Still cannot find a justification for the movable zone (never had to 
use it in testing) but it seems that it makes memory unplug easier. The 
antifrag patchset together with a page migration patch simplifies the 
unplug patchset significantly.

I think the antifrag code is a significant step forward and will enable 
lots of other features (memory unplug, larger page use in SLUB, huge page 
allocs after boot). It may be useful to put memory compaction and memory 
unplug in at the same time (I think we can get there even for .23) so that 
we have a full package. With compaction we can finally recover from loads 
that typically cause memory to be split in a lot of disjoint pieces and 
get to a sitaution were we can dynamically reconfigure the number of huge 
pages at run time (Our customers currently reboot to do this which is a 
pain). Compaction increases the chance of I/O controllers being able to 
merge I/O requests since contiguous pages can be served by the page 
allocator again. Antifrag almost gets there but I can still construct 
allocation scenarios that fragment memory significantly.

Also compaction is a requirement if we ever want to support larger 
blocksizes. That would allow the removal of various layers that are now 
needed to compensate for not supporting larger pages.

The whole approach is useful to increase performance. We have seen 
several percentage points of performance wins with SLUB when allowing 
larger pages sizes. The use of huge pages is also mainly done for 
performance reasons. The large blocksize patch has shown a 50% performance 
increase even in its prototype form where we certainly have not solved 
server performance issues.

Even without large blocksize: The ability to restore the capability of the 
page allocator to serve pages that are in sequence can be used to shorten
the scatter gather lists in the I/O layer speeding up I/O.

I think this is an important contribution that will move a lot of other 
issues forward.

--
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:[~2007-06-27 12:44 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-01  6:03 Ethan Solomita
2007-06-01  6:10 ` [RFC 2/7] cpuset write pdflush nodemask Ethan Solomita
2007-06-01  6:11 ` [RFC 3/7] cpuset write throttle Ethan Solomita
2007-06-01  6:13 ` [RFC 4/7] cpuset write vmscan Ethan Solomita
2007-06-01  6:15 ` [RFC 5/7] cpuset write vm writeout Ethan Solomita
2007-06-01  6:16 ` [corrected][RFC " Ethan Solomita
2007-06-01  6:16 ` [RFC 6/7] cpuset write fixes Ethan Solomita
2007-06-01  6:17 ` [RFC 7/7] cpuset dirty limits Ethan Solomita
2007-06-04 18:39 ` [RFC 1/7] cpuset write dirty map Christoph Lameter
2007-06-04 19:38   ` Ethan Solomita
2007-06-04 19:52     ` Christoph Lameter
2007-06-25 20:21       ` Ethan Solomita
2007-06-26 19:16         ` Christoph Lameter
2007-06-26 22:22           ` Andrew Morton
2007-06-27  3:18             ` Christoph Lameter
2007-06-27  9:14               ` Andrew Morton
2007-06-27 12:44                 ` Christoph Lameter [this message]
2007-06-27 21:10                   ` Mel Gorman
2007-06-27 18:17             ` Ethan Solomita
2007-06-27 21:38               ` Christoph Lameter
2007-07-01  2:57                 ` Ethan Solomita
2007-07-03 18:09                   ` Christoph Lameter
2007-07-11 19:18           ` Ethan Solomita
2007-07-11 20:11             ` Christoph Lameter
2007-07-12  1:07               ` Ethan Solomita
  -- strict thread matches above, loose matches on Subject: below --
2007-04-23 23:20 Ethan Solomita

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=Pine.LNX.4.64.0706270527010.26731@schroedinger.engr.sgi.com \
    --to=clameter@sgi.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=solo@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox