From: Nick Piggin <nickpiggin@yahoo.com.au>
To: Andi Kleen <ak@suse.de>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [patch 1/14] mm: opt rmqueue
Date: Mon, 07 Nov 2005 14:43:03 +1100 [thread overview]
Message-ID: <436ECD47.4050808@yahoo.com.au> (raw)
In-Reply-To: <200511070423.45306.ak@suse.de>
Andi Kleen wrote:
> On Monday 07 November 2005 02:06, Nick Piggin wrote:
>
>
>>Yes, all this turning on and off of interrupts does have a
>>significant cost here.
>
>
> How did you find out?
>
Measuring the actual performance improvement on kbuild.
Not to mention that profiles for things like mod_page_state
go dramatically down, but you can't use that alone to be sure
of an improvement.
>
>>With the full patchset applied, most of the hot path statistics
>>get put under areas that already require interrupts to be off,
>>however there are still a few I didn't get around to doing.
>>zone_statistics on CONFIG_NUMA, for example.
>
>
> These should just be local_t
>
Yep.
>
>>I wonder if local_t is still good on architectures like ppc64
>>where it still requires an ll/sc sequence?
>
>
> The current default fallback local_t doesn't require that. It uses
> different fields indexed by !!in_interrupt()
>
Right I didn't see that. ppc(32), then.
I think maybe for struct page_state there is not so much point
in using local_t because the hot page allocator paths can easily
be covered under the interrupt critical sections.
The other fields aren't very hot, and using local_t would bloat
this up by many cachelines on 64-bit architectures like ppc64,
and would make them probably noticably more expensive on 32s
like ppc.
Actually, the NUMA fields in the pcp lists can probably also
just be put under the interrupt-off section that the page
allocator uses. At least it should be much easier to do when
Seth's __alloc_pages cleanup goes in. I'll keep it in mind.
--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com
next prev parent reply other threads:[~2005-11-07 3:40 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-06 8:11 [rfc][patch 0/14] mm: performance improvements Nick Piggin
2005-11-06 8:20 ` [patch 1/14] mm: opt rmqueue Nick Piggin
2005-11-06 8:20 ` [patch 2/14] mm: Nick Piggin
2005-11-06 8:20 ` [patch 2/14] mm: pte prefetch Nick Piggin
2005-11-06 8:21 ` [patch 3/14] mm: release opt Nick Piggin
2005-11-06 8:22 ` [patch 4/14] mm: rmap opt Nick Piggin
2005-11-06 8:23 ` [patch 5/14] mm: set_page_refs opt Nick Piggin
2005-11-06 8:24 ` [patch 6/14] mm: microopt conditions Nick Piggin
2005-11-06 8:24 ` [patch 7/14] mm: remove bad_range Nick Piggin
2005-11-06 8:25 ` [patch 8/14] mm: remove pcp_low Nick Piggin
2005-11-06 8:25 ` [patch 9/14] mm: page_state opt Nick Piggin
2005-11-06 8:26 ` [patch 10/14] mm: single pcp list Nick Piggin
2005-11-06 8:26 ` [patch 11/14] mm: increase pcp size Nick Piggin
2005-11-06 8:27 ` [patch 12/14] mm: variable " Nick Piggin
2005-11-06 8:27 ` [patch 13/14] mm: cleanup zone_pcp Nick Piggin
2005-11-06 8:28 ` [patch 14/14] mm: page_alloc cleanups Nick Piggin
2005-11-13 2:38 ` [patch 9/14] mm: page_state opt Andi Kleen
2005-11-06 17:37 ` [patch 7/14] mm: remove bad_range Bob Picco
2005-11-07 0:58 ` Nick Piggin
2005-11-07 3:00 ` Bob Picco
2005-11-07 3:05 ` Nick Piggin
2005-11-07 1:40 ` [patch 5/14] mm: set_page_refs opt Christoph Hellwig
2005-11-07 1:45 ` Nick Piggin
2005-11-06 8:35 ` [patch 2/14] mm: pte prefetch Arjan van de Ven
2005-11-06 8:51 ` Nick Piggin
2005-11-06 17:37 ` [patch 1/14] mm: opt rmqueue Andi Kleen
2005-11-07 1:06 ` Nick Piggin
2005-11-07 3:23 ` Andi Kleen
2005-11-07 3:43 ` Nick Piggin [this message]
2005-11-07 1:39 ` [rfc][patch 0/14] mm: performance improvements Christoph Hellwig
2005-11-07 1:51 ` Nick Piggin
2005-11-07 3:57 ` Paul Jackson
2005-11-07 4:51 ` Nick Piggin
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=436ECD47.4050808@yahoo.com.au \
--to=nickpiggin@yahoo.com.au \
--cc=ak@suse.de \
--cc=linux-kernel@vger.kernel.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