From: Mel Gorman <mel@csn.ul.ie>
To: Andi Kleen <ak@suse.de>
Cc: Andrew Morton <akpm@osdl.org>,
davej@codemonkey.org.uk, tony.luck@intel.com, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, bob.picco@hp.com,
linuxppc-dev@ozlabs.org
Subject: Re: [PATCH 0/5] Sizing zones and holes in an architecture independent manner V7
Date: Wed, 7 Jun 2006 11:11:57 +0100 (IST) [thread overview]
Message-ID: <Pine.LNX.4.64.0606071059480.20653@skynet.skynet.ie> (raw)
In-Reply-To: <200606071145.04938.ak@suse.de>
On Wed, 7 Jun 2006, Andi Kleen wrote:
>> Spanned pages and holes will be different on
>> x86_64 because I don't account the kernel image and memmap as holes.
>
> That's a significant inaccuracy and may give worse VM results.
>
Right now, x86_64 seems to be the only arch that accounts for the kernel
image and memmap as holes so I would consider it to be unusual. For memory
hot-add, new memmaps are allocated using kmalloc() and are not accounted
for as holes. So, on x86_64, some memmaps are holes and others are not.
Why is it a performance regression if the image and memmap is accounted
for as holes? How are those regions different from any other kernel
allocation or bootmem allocations for example which are not accounted as
holes? Bear in mind that when I said "I don't account the kernel image and
memmap as holes", the spanned_pages value remains the same, the value of
present_pages is greater but the starting number of free pages should be
more or less the same.
If you are sure that it makes a measurable difference to performance, I
can work on adding a new call unregister_active_region() that allows an
arch to account for arbitrary pfn ranges as holes. This could be used for
kernel images, memmaps and probably the first contiguous allocated block
used by the bootmem allocator. However, I'm not sure it is worth the
effort. That said, if it *is* worth the effort, all architectures using
the arch-independent zone-sizing would benefit, not just x86_64.
--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab
next prev parent reply other threads:[~2006-06-07 10:12 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-06 13:47 [PATCH 0/5] Sizing zones and holes in an architecture independent manner V7 Mel Gorman
2006-06-06 13:47 ` [PATCH 1/5] Introduce mechanism for registering active regions of memory Mel Gorman
2006-06-06 13:47 ` [PATCH 2/5] Have Power use add_active_range() and free_area_init_nodes() Mel Gorman
2006-06-06 13:48 ` [PATCH 3/5] Have x86 use add_active_range() and free_area_init_nodes Mel Gorman
2006-06-06 13:48 ` [PATCH 4/5] Have x86_64 " Mel Gorman
2006-06-06 13:48 ` [PATCH 5/5] Have ia64 " Mel Gorman
2006-06-06 23:43 ` [PATCH 0/5] Sizing zones and holes in an architecture independent manner V7 Andrew Morton
2006-06-07 9:42 ` Mel Gorman
2006-06-07 9:45 ` Andi Kleen
2006-06-07 10:11 ` Mel Gorman [this message]
2006-06-07 10:16 ` Andi Kleen
2006-06-07 10:54 ` Mel Gorman
2006-06-07 15:20 ` Andi Kleen
2006-06-07 16:25 ` Mel Gorman
2006-06-09 12:57 ` Mel Gorman
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.0606071059480.20653@skynet.skynet.ie \
--to=mel@csn.ul.ie \
--cc=ak@suse.de \
--cc=akpm@osdl.org \
--cc=bob.picco@hp.com \
--cc=davej@codemonkey.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=tony.luck@intel.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;
as well as URLs for NNTP newsgroup(s).