From: Nick Piggin <npiggin@suse.de>
To: Christoph Lameter <clameter@engr.sgi.com>
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: Fri, 2 Mar 2007 08:19:55 +0100 [thread overview]
Message-ID: <20070302071955.GA5557@wotan.suse.de> (raw)
In-Reply-To: <Pine.LNX.4.64.0703012236160.1979@schroedinger.engr.sgi.com>
On Thu, Mar 01, 2007 at 10:51:00PM -0800, Christoph Lameter wrote:
> On Fri, 2 Mar 2007, Nick Piggin wrote:
>
> > > There was no talk about slightly. 1G page size would actually be quite
> > > convenient for some applications.
> >
> > But it is far from convenient for the kernel. So we have hugepages, so
> > we can stay out of the hair of those applications and they can stay out
> > of hours.
>
> Huge pages cannot do I/O so we would get back to the gazillions of pages
> to be handled for I/O. I'd love to have I/O support for huge pages. This
> would address some of the issues.
Can't direct IO from a hugepage?
> > > Writing a terabyte of memory to disk with handling 256 billion page
> > > structs? In case of a system with 1 petabyte of memory this may be rather
> > > typical and necessary for the application to be able to save its state
> > > on disk.
> >
> > But you will have newer IO controllers, faster CPUs...
>
> Sure we will. And you believe that the the newer controllers will be able
> to magically shrink the the SG lists somehow? We will offload the
> coalescing of the page structs into bios in hardware or some such thing?
> And the vmscans etc too?
As far as pagecache page management goes, is that an issue for you?
I don't want to know about how many billions of pages for some operation,
just some profiles.
> > Is it a problem or isn't it? Waving around the 256 billion number isn't
> > impressive because it doesn't really say anything.
>
> It is the number of items that needs to be handled by the I/O layer and
> likely by the SG engine.
The number is irrelevant, it is the rate that is important.
> > I understand you have controllers (or maybe it is a block layer limit)
> > that doesn't work well with 4K pages, but works OK with 16K pages.
>
> Really? This is the first that I have heard about it.
>
Maybe that's the issue you're running into.
> > This is not something that we would introduce variable sized pagecache
> > for, surely.
>
> I am not sure where you get the idea that this is the sole reason why we
> need to be able to handle larger contiguous chunks of memory.
I'm not saying that. You brought up this subject of variable sized pagecache.
> How about coming up with a response to the issue at hand? How do I write
> back 1 Terabyte effectively? Ok this may be an exotic configuration today
> but in one year this may be much more common. Memory sizes keep on
> increasing and so is the number of page structs to be handled for I/O. At
> some point we need a solution here.
Considering you're just handwaving about the actual problems, I
don't know. I assume you're sitting in front of some workload that has
gone wrong, so can't you elaborate?
Eventually, increasing x86 page size a bit might be an idea. We could even
do it in software if CPU manufacturers don't for us.
That doesn't buy us a great deal if you think there is this huge looming
problem with struct page management though.
WARNING: multiple messages have this Message-ID (diff)
From: Nick Piggin <npiggin@suse.de>
To: Christoph Lameter <clameter@engr.sgi.com>
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: Fri, 2 Mar 2007 08:19:55 +0100 [thread overview]
Message-ID: <20070302071955.GA5557@wotan.suse.de> (raw)
In-Reply-To: <Pine.LNX.4.64.0703012236160.1979@schroedinger.engr.sgi.com>
On Thu, Mar 01, 2007 at 10:51:00PM -0800, Christoph Lameter wrote:
> On Fri, 2 Mar 2007, Nick Piggin wrote:
>
> > > There was no talk about slightly. 1G page size would actually be quite
> > > convenient for some applications.
> >
> > But it is far from convenient for the kernel. So we have hugepages, so
> > we can stay out of the hair of those applications and they can stay out
> > of hours.
>
> Huge pages cannot do I/O so we would get back to the gazillions of pages
> to be handled for I/O. I'd love to have I/O support for huge pages. This
> would address some of the issues.
Can't direct IO from a hugepage?
> > > Writing a terabyte of memory to disk with handling 256 billion page
> > > structs? In case of a system with 1 petabyte of memory this may be rather
> > > typical and necessary for the application to be able to save its state
> > > on disk.
> >
> > But you will have newer IO controllers, faster CPUs...
>
> Sure we will. And you believe that the the newer controllers will be able
> to magically shrink the the SG lists somehow? We will offload the
> coalescing of the page structs into bios in hardware or some such thing?
> And the vmscans etc too?
As far as pagecache page management goes, is that an issue for you?
I don't want to know about how many billions of pages for some operation,
just some profiles.
> > Is it a problem or isn't it? Waving around the 256 billion number isn't
> > impressive because it doesn't really say anything.
>
> It is the number of items that needs to be handled by the I/O layer and
> likely by the SG engine.
The number is irrelevant, it is the rate that is important.
> > I understand you have controllers (or maybe it is a block layer limit)
> > that doesn't work well with 4K pages, but works OK with 16K pages.
>
> Really? This is the first that I have heard about it.
>
Maybe that's the issue you're running into.
> > This is not something that we would introduce variable sized pagecache
> > for, surely.
>
> I am not sure where you get the idea that this is the sole reason why we
> need to be able to handle larger contiguous chunks of memory.
I'm not saying that. You brought up this subject of variable sized pagecache.
> How about coming up with a response to the issue at hand? How do I write
> back 1 Terabyte effectively? Ok this may be an exotic configuration today
> but in one year this may be much more common. Memory sizes keep on
> increasing and so is the number of page structs to be handled for I/O. At
> some point we need a solution here.
Considering you're just handwaving about the actual problems, I
don't know. I assume you're sitting in front of some workload that has
gone wrong, so can't you elaborate?
Eventually, increasing x86 page size a bit might be an idea. We could even
do it in software if CPU manufacturers don't for us.
That doesn't buy us a great deal if you think there is this huge looming
problem with struct page management though.
--
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>
next prev parent reply other threads:[~2007-03-02 7:20 UTC|newest]
Thread overview: 203+ 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-01 10:12 ` 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 1:52 ` Balbir Singh
2007-03-02 3:44 ` Linus Torvalds
2007-03-02 3:44 ` Linus Torvalds
2007-03-02 3:59 ` Andrew Morton
2007-03-02 3:59 ` Andrew Morton
2007-03-02 5:11 ` Linus Torvalds
2007-03-02 5:11 ` Linus Torvalds
2007-03-02 5:50 ` KAMEZAWA Hiroyuki
2007-03-02 5:50 ` KAMEZAWA Hiroyuki
2007-03-02 6:15 ` Paul Mundt
2007-03-02 6:15 ` Paul Mundt
2007-03-02 17:01 ` Mel Gorman
2007-03-02 17:01 ` Mel Gorman
2007-03-02 16:20 ` Mark Gross
2007-03-02 16:20 ` Mark Gross
2007-03-02 17:07 ` Andrew Morton
2007-03-02 17:07 ` Andrew Morton
2007-03-02 17:35 ` Mark Gross
2007-03-02 17:35 ` Mark Gross
2007-03-02 18:02 ` Andrew Morton
2007-03-02 18:02 ` Andrew Morton
2007-03-02 19:02 ` Mark Gross
2007-03-02 19:02 ` Mark Gross
2007-03-02 17:16 ` Linus Torvalds
2007-03-02 17:16 ` Linus Torvalds
2007-03-02 18:45 ` Mark Gross
2007-03-02 18:45 ` Mark Gross
2007-03-02 19:03 ` Linus Torvalds
2007-03-02 19:03 ` Linus Torvalds
2007-03-02 23:58 ` Martin J. Bligh
2007-03-02 23:58 ` Martin J. Bligh
2007-03-02 4:18 ` Balbir Singh
2007-03-02 4:18 ` Balbir Singh
2007-03-02 5:13 ` Jeremy Fitzhardinge
2007-03-02 5:13 ` Jeremy Fitzhardinge
2007-03-06 4:16 ` Paul Mackerras
2007-03-06 4:16 ` Paul Mackerras
2007-03-02 16:58 ` Mel Gorman
2007-03-02 16:58 ` Mel Gorman
2007-03-02 17:05 ` Joel Schopp
2007-03-02 17:05 ` Joel Schopp
2007-03-05 3:21 ` Nick Piggin
2007-03-05 3:21 ` Nick Piggin
2007-03-05 15:20 ` Joel Schopp
2007-03-05 15:20 ` Joel Schopp
2007-03-05 16:01 ` Nick Piggin
2007-03-05 16:01 ` Nick Piggin
2007-03-05 16:45 ` Joel Schopp
2007-03-05 16:45 ` Joel Schopp
2007-05-03 8:49 ` Andy Whitcroft
2007-05-03 8:49 ` Andy Whitcroft
2007-03-02 1:39 ` Balbir Singh
2007-03-02 1:39 ` Balbir Singh
2007-03-02 2:34 ` KAMEZAWA Hiroyuki
2007-03-02 2:34 ` KAMEZAWA Hiroyuki
2007-03-02 3:05 ` Christoph Lameter
2007-03-02 3:05 ` Christoph Lameter
2007-03-02 3:57 ` Nick Piggin
2007-03-02 3:57 ` Nick Piggin
2007-03-02 4:06 ` Christoph Lameter
2007-03-02 4:06 ` Christoph Lameter
2007-03-02 4:21 ` Nick Piggin
2007-03-02 4:21 ` Nick Piggin
2007-03-02 4:31 ` Christoph Lameter
2007-03-02 4:31 ` Christoph Lameter
2007-03-02 5:06 ` Nick Piggin
2007-03-02 5:06 ` Nick Piggin
2007-03-02 5:40 ` Christoph Lameter
2007-03-02 5:40 ` Christoph Lameter
2007-03-02 5:49 ` Nick Piggin
2007-03-02 5:49 ` Nick Piggin
2007-03-02 5:53 ` Christoph Lameter
2007-03-02 5:53 ` Christoph Lameter
2007-03-02 6:08 ` Nick Piggin
2007-03-02 6:08 ` Nick Piggin
2007-03-02 6:19 ` Christoph Lameter
2007-03-02 6:19 ` Christoph Lameter
2007-03-02 6:29 ` Nick Piggin
2007-03-02 6:29 ` Nick Piggin
2007-03-02 6:51 ` Christoph Lameter
2007-03-02 6:51 ` Christoph Lameter
2007-03-02 7:03 ` Andrew Morton
2007-03-02 7:03 ` Andrew Morton
2007-03-02 7:19 ` Nick Piggin [this message]
2007-03-02 7:19 ` Nick Piggin
2007-03-02 7:44 ` Christoph Lameter
2007-03-02 7:44 ` Christoph Lameter
2007-03-02 8:12 ` Nick Piggin
2007-03-02 8:12 ` Nick Piggin
2007-03-02 8:21 ` Christoph Lameter
2007-03-02 8:21 ` Christoph Lameter
2007-03-02 8:38 ` Nick Piggin
2007-03-02 8:38 ` Nick Piggin
2007-03-02 17:09 ` Christoph Lameter
2007-03-02 17:09 ` Christoph Lameter
2007-03-04 1:26 ` Rik van Riel
2007-03-04 1:26 ` Rik van Riel
2007-03-04 1:51 ` Andrew Morton
2007-03-04 1:51 ` Andrew Morton
2007-03-04 1:58 ` Rik van Riel
2007-03-04 1:58 ` Rik van Riel
2007-03-02 5:50 ` Christoph Lameter
2007-03-02 5:50 ` Christoph Lameter
2007-03-02 4:29 ` Andrew Morton
2007-03-02 4:29 ` Andrew Morton
2007-03-02 4:33 ` Christoph Lameter
2007-03-02 4:33 ` Christoph Lameter
2007-03-02 4:58 ` Andrew Morton
2007-03-02 4:58 ` Andrew Morton
2007-03-02 4:20 ` Paul Mundt
2007-03-02 4:20 ` Paul Mundt
2007-03-02 13:50 ` Arjan van de Ven
2007-03-02 13:50 ` Arjan van de Ven
2007-03-02 15:29 ` Rik van Riel
2007-03-02 15:29 ` Rik van Riel
2007-03-02 16:58 ` Andrew Morton
2007-03-02 16:58 ` Andrew Morton
2007-03-02 17:09 ` Mel Gorman
2007-03-02 17:09 ` Mel Gorman
2007-03-02 17:23 ` Christoph Lameter
2007-03-02 17:23 ` Christoph Lameter
2007-03-02 17:35 ` Andrew Morton
2007-03-02 17:35 ` Andrew Morton
2007-03-02 17:43 ` Rik van Riel
2007-03-02 17:43 ` Rik van Riel
2007-03-02 18:06 ` Andrew Morton
2007-03-02 18:06 ` Andrew Morton
2007-03-02 18:15 ` Christoph Lameter
2007-03-02 18:15 ` Christoph Lameter
2007-03-02 18:23 ` Andrew Morton
2007-03-02 18:23 ` Andrew Morton
2007-03-02 18:23 ` Rik van Riel
2007-03-02 18:23 ` Rik van Riel
2007-03-02 19:31 ` Christoph Lameter
2007-03-02 19:31 ` Christoph Lameter
2007-03-02 19:40 ` Rik van Riel
2007-03-02 19:40 ` Rik van Riel
2007-03-02 21:12 ` Bill Irwin
2007-03-02 21:12 ` Bill Irwin
2007-03-02 21:19 ` Rik van Riel
2007-03-02 21:19 ` Rik van Riel
2007-03-02 21:52 ` Andrew Morton
2007-03-02 21:52 ` Andrew Morton
2007-03-02 22:03 ` Rik van Riel
2007-03-02 22:03 ` Rik van Riel
2007-03-02 22:22 ` Andrew Morton
2007-03-02 22:22 ` Andrew Morton
2007-03-02 22:34 ` Rik van Riel
2007-03-02 22:34 ` Rik van Riel
2007-03-02 22:51 ` Martin Bligh
2007-03-02 22:51 ` Martin Bligh
2007-03-02 22:54 ` Rik van Riel
2007-03-02 22:54 ` Rik van Riel
2007-03-02 23:28 ` Martin J. Bligh
2007-03-02 23:28 ` Martin J. Bligh
2007-03-03 0:24 ` Andrew Morton
2007-03-03 0:24 ` Andrew Morton
2007-03-02 22:52 ` Chuck Ebbert
2007-03-02 22:52 ` Chuck Ebbert
2007-03-02 22:59 ` Andrew Morton
2007-03-02 22:59 ` Andrew Morton
2007-03-02 23:20 ` Rik van Riel
2007-03-02 23:20 ` Rik van Riel
2007-03-03 1:40 ` William Lee Irwin III
2007-03-03 1:40 ` William Lee Irwin III
2007-03-03 1:58 ` Andrew Morton
2007-03-03 1:58 ` Andrew Morton
2007-03-03 3:55 ` William Lee Irwin III
2007-03-03 3:55 ` William Lee Irwin III
2007-03-02 23:16 ` [PATCH] : Optimizes timespec_trunc() Eric Dumazet
2007-03-03 0:33 ` The performance and behaviour of the anti-fragmentation related patches William Lee Irwin III
2007-03-03 0:33 ` William Lee Irwin III
2007-03-03 0:54 ` Andrew Morton
2007-03-03 0:54 ` Andrew Morton
2007-03-03 3:15 ` Christoph Lameter
2007-03-03 3:15 ` Christoph Lameter
2007-03-03 4:19 ` William Lee Irwin III
2007-03-03 4:19 ` William Lee Irwin III
2007-03-03 17:16 ` Martin J. Bligh
2007-03-03 17:16 ` Martin J. Bligh
2007-03-03 17:50 ` Christoph Lameter
2007-03-03 17:50 ` Christoph Lameter
2007-03-02 20:59 ` Bill Irwin
2007-03-02 20:59 ` Bill Irwin
2007-03-02 16:32 ` Mel Gorman
2007-03-02 17:19 ` Christoph Lameter
2007-03-02 17:28 ` Mel Gorman
2007-03-02 17:48 ` Christoph Lameter
2007-03-02 17:59 ` Mel Gorman
2007-03-03 4:54 ` KAMEZAWA Hiroyuki
2007-03-02 1:52 ` Bill Irwin
2007-03-02 1:52 ` Bill Irwin
2007-03-02 10:38 ` Mel Gorman
2007-03-02 10:38 ` Mel Gorman
2007-03-02 16:31 ` Joel Schopp
2007-03-02 16:31 ` Joel Schopp
2007-03-02 21:37 ` Bill Irwin
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=20070302071955.GA5557@wotan.suse.de \
--to=npiggin@suse.de \
--cc=akpm@linux-foundation.org \
--cc=arjan@infradead.org \
--cc=clameter@engr.sgi.com \
--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=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 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.