linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Christoph Lameter <clameter@engr.sgi.com>
To: Nick Piggin <npiggin@suse.de>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Mel Gorman <mel@skynet.ie>,
	mingo@elte.hu, jschopp@austin.ibm.com, arjan@infradead.org,
	torvalds@linux-foundation.org, mbligh@mbligh.org,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: The performance and behaviour of the anti-fragmentation related patches
Date: Thu, 1 Mar 2007 20:31:24 -0800 (PST)	[thread overview]
Message-ID: <Pine.LNX.4.64.0703012022320.14299@schroedinger.engr.sgi.com> (raw)
In-Reply-To: <20070302042149.GB15867@wotan.suse.de>

On Fri, 2 Mar 2007, Nick Piggin wrote:

> > Yes, we (SGI) need exactly that: Use of higher order pages in the kernel 
> > in order to reduce overhead of managing page structs for large I/O and 
> > large memory applications. We need appropriate measures to deal with the 
> > fragmentation problem.
> 
> I don't understand why, out of any architecture, ia64 would have to hack
> around this in software :(

Ummm... We have x86_64 platforms with the 4k page problem. 4k pages are 
very useful for the large number of small files that are around. But for 
the large streams of data you would want other methods of handling these.

If I want to write 1 terabyte (2^50) to disk then the I/O subsystem has 
to handle 2^(50-12) = 2^38 = 256 million page structs! This limits I/O 
bandwiths and leads to huge scatter gather lists (and we are limited in 
terms of the numbe of items on those lists in many drivers). Our future 
platforms have up to serveral petabytes of memory. There needs to be some 
way to handle these capacities in an efficient way. We cannot wait 
an hour for the terabyte to reach the disk.
 
> > We need to reduce the real hardware zones as much as possible. Most high 
> > performance architectures have no need for additional DMA zones f.e. and
> > do not have to deal with the complexities that arise there.
> 
> And then you want to add something else on top of them?

zones are basically managing a number of MAX_ORDER chunks. The adding of 
something here is dealing with the categorization of these MAX_ORDER 
chunks in order to insure movability and thus defragmentability of
most of them. Or the upper layer may limit the number of those chunks
assigned to a certain container.

> > Yes that would mean merging nodes and zones. So "nones".
> 
> Yes, this is what Andrew just said. But you then wanted to add virtual zones
> or something on top. I just don't understand why. You agree that merging
> nodes and zones is a good idea. Did I miss the important post where some
> bright person discovered why merging zones and "virtual zones" is a bad
> idea?

Hmmm.. I usually talk about the "virtual zones" as virtual nodes. But we 
are basically at the same point there. Node level controls and APIs exist and 
can even be used from user space. A container could just be a special node 
and then the allocations to this container could be controlled via the 
existing APIs.

A virtual zone/node would be assigned a number of MAX_ORDER blocks from 
real zones/nodes. Then it may hopefully be managed like a real node. In 
the original zone/node these MAX_ORDER blocks would show up as 
unavailable. The "upper" layer therefore is the existing node/zone layer. 
The virtual zones/nodes just steal memory from the real ones.


--
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-03-02  4:31 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-01 10:12 The performance and behaviour of the anti-fragmentation related patches Mel Gorman
2007-03-02  0:09 ` Andrew Morton
2007-03-02  0:44   ` Linus Torvalds
2007-03-02  1:52     ` Balbir Singh
2007-03-02  3:44       ` Linus Torvalds
2007-03-02  3:59         ` Andrew Morton
2007-03-02  5:11           ` Linus Torvalds
2007-03-02  5:50             ` KAMEZAWA Hiroyuki
2007-03-02  6:15               ` Paul Mundt
2007-03-02 17:01                 ` Mel Gorman
2007-03-02 16:20             ` Mark Gross
2007-03-02 17:07               ` Andrew Morton
2007-03-02 17:35                 ` Mark Gross
2007-03-02 18:02                   ` Andrew Morton
2007-03-02 19:02                     ` Mark Gross
2007-03-02 17:16               ` Linus Torvalds
2007-03-02 18:45                 ` Mark Gross
2007-03-02 19:03                   ` Linus Torvalds
2007-03-02 23:58                 ` Martin J. Bligh
2007-03-02  4:18         ` Balbir Singh
2007-03-02  5:13         ` Jeremy Fitzhardinge
2007-03-06  4:16         ` Paul Mackerras
2007-03-02 16:58     ` Mel Gorman
2007-03-02 17:05     ` Joel Schopp
2007-03-05  3:21       ` Nick Piggin
2007-03-05 15:20         ` Joel Schopp
2007-03-05 16:01           ` Nick Piggin
2007-03-05 16:45             ` Joel Schopp
2007-05-03  8:49           ` Andy Whitcroft
2007-03-02  1:39   ` Balbir Singh
2007-03-02  2:34   ` KAMEZAWA Hiroyuki
2007-03-02  3:05   ` Christoph Lameter
2007-03-02  3:57     ` Nick Piggin
2007-03-02  4:06       ` Christoph Lameter
2007-03-02  4:21         ` Nick Piggin
2007-03-02  4:31           ` Christoph Lameter [this message]
2007-03-02  5:06             ` Nick Piggin
2007-03-02  5:40               ` Christoph Lameter
2007-03-02  5:49                 ` Nick Piggin
2007-03-02  5:53                   ` Christoph Lameter
2007-03-02  6:08                     ` Nick Piggin
2007-03-02  6:19                       ` Christoph Lameter
2007-03-02  6:29                         ` Nick Piggin
2007-03-02  6:51                           ` Christoph Lameter
2007-03-02  7:03                             ` Andrew Morton
2007-03-02  7:19                             ` Nick Piggin
2007-03-02  7:44                               ` Christoph Lameter
2007-03-02  8:12                                 ` Nick Piggin
2007-03-02  8:21                                   ` Christoph Lameter
2007-03-02  8:38                                     ` Nick Piggin
2007-03-02 17:09                                       ` Christoph Lameter
2007-03-04  1:26                                   ` Rik van Riel
2007-03-04  1:51                                     ` Andrew Morton
2007-03-04  1:58                                       ` Rik van Riel
2007-03-02  5:50               ` Christoph Lameter
2007-03-02  4:29         ` Andrew Morton
2007-03-02  4:33           ` Christoph Lameter
2007-03-02  4:58             ` Andrew Morton
2007-03-02  4:20       ` Paul Mundt
2007-03-02 13:50   ` Arjan van de Ven
2007-03-02 15:29   ` Rik van Riel
2007-03-02 16:58     ` Andrew Morton
2007-03-02 17:09       ` Mel Gorman
2007-03-02 17:23       ` Christoph Lameter
2007-03-02 17:35         ` Andrew Morton
2007-03-02 17:43           ` Rik van Riel
2007-03-02 18:06             ` Andrew Morton
2007-03-02 18:15               ` Christoph Lameter
2007-03-02 18:23                 ` Andrew Morton
2007-03-02 18:23                 ` Rik van Riel
2007-03-02 19:31                   ` Christoph Lameter
2007-03-02 19:40                     ` Rik van Riel
2007-03-02 21:12                   ` Bill Irwin
2007-03-02 21:19                     ` Rik van Riel
2007-03-02 21:52                       ` Andrew Morton
2007-03-02 22:03                         ` Rik van Riel
2007-03-02 22:22                           ` Andrew Morton
2007-03-02 22:34                             ` Rik van Riel
2007-03-02 22:51                               ` Martin Bligh
2007-03-02 22:54                                 ` Rik van Riel
2007-03-02 23:28                                   ` Martin J. Bligh
2007-03-03  0:24                                     ` Andrew Morton
2007-03-02 22:52                               ` Chuck Ebbert
2007-03-02 22:59                               ` Andrew Morton
2007-03-02 23:20                                 ` Rik van Riel
2007-03-03  1:40                                 ` William Lee Irwin III
2007-03-03  1:58                                   ` Andrew Morton
2007-03-03  3:55                                     ` William Lee Irwin III
2007-03-03  0:33                             ` William Lee Irwin III
2007-03-03  0:54                               ` Andrew Morton
2007-03-03  3:15                               ` Christoph Lameter
2007-03-03  4:19                                 ` William Lee Irwin III
2007-03-03 17:16                                 ` Martin J. Bligh
2007-03-03 17:50                                   ` Christoph Lameter
2007-03-02 20:59               ` Bill Irwin
2007-03-02  1:52 ` Bill Irwin
2007-03-02 10:38   ` Mel Gorman
2007-03-02 16:31     ` Joel Schopp
2007-03-02 21:37       ` Bill Irwin

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.0703012022320.14299@schroedinger.engr.sgi.com \
    --to=clameter@engr.sgi.com \
    --cc=akpm@linux-foundation.org \
    --cc=arjan@infradead.org \
    --cc=jschopp@austin.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mbligh@mbligh.org \
    --cc=mel@skynet.ie \
    --cc=mingo@elte.hu \
    --cc=npiggin@suse.de \
    --cc=torvalds@linux-foundation.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).