From: Johannes Weiner <hannes@cmpxchg.org>
To: Dave Hansen <dave.hansen@intel.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Linux-MM <linux-mm@kvack.org>, Mel Gorman <mgorman@suse.de>,
Rik van Riel <riel@redhat.com>, Kevin Hilman <khilman@linaro.org>,
Andrea Arcangeli <aarcange@redhat.com>,
Paul Bolle <paul.bollee@gmail.com>,
Zlatko Calusic <zcalusic@bitsync.net>,
Andrew Morton <akpm@linux-foundation.org>,
Tim Chen <tim.c.chen@linux.intel.com>,
Andi Kleen <ak@linux.intel.com>
Subject: Re: NUMA? bisected performance regression 3.11->3.12
Date: Fri, 22 Nov 2013 01:38:45 -0500 [thread overview]
Message-ID: <20131122063845.GM3556@cmpxchg.org> (raw)
In-Reply-To: <528EF744.8040607@intel.com>
On Thu, Nov 21, 2013 at 10:18:44PM -0800, Dave Hansen wrote:
> On 11/21/2013 09:22 PM, Johannes Weiner wrote:
> >> > It's a 8-socket/160-thread (one NUMA node per socket) system that is not
> >> > under memory pressure during the test. The latencies are also such that
> >> > vm.zone_reclaim_mode=0.
> > The change will definitely spread allocations out to all nodes then
> > and it's plausible that the remote references will hurt kernel object
> > allocations in a tight loop. Just to confirm, could you rerun the
> > test with zone_reclaim_mode enabled to make the allocator stay in the
> > local zones?
>
> Yeah, setting vm.zone_reclaim_mode=1 fixes it pretty instantaneously.
>
> For what it's worth, I'm pretty convinced that the numbers folks put in
> the SLIT tables are, at best, horribly inconsistent from system to
> system. At worst, they're utter fabrications not linked at all to the
> reality of the actual latencies.
You mean the reported distances should probably be bigger on this
particular machine?
But even when correct, zone_reclaim_mode might not be the best
predictor. Just because it's not worth yet to invest direct reclaim
efforts to stay local does not mean that remote references are free.
I'm currently running some tests with the below draft to see if this
would still leave us with enough fairness. Does the patch restore
performance even with zone_reclaim_mode disabled?
---
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index dd886fa..c77cead 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -1926,7 +1926,8 @@ zonelist_scan:
* back to remote zones that do not partake in the
* fairness round-robin cycle of this zonelist.
*/
- if (alloc_flags & ALLOC_WMARK_LOW) {
+ if ((alloc_flags & ALLOC_WMARK_LOW) &&
+ (gfp_mask & GFP_MOVABLE_MASK)) {
if (zone_page_state(zone, NR_ALLOC_BATCH) <= 0)
continue;
if (zone_reclaim_mode &&
--
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:[~2013-11-22 6:38 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-21 22:57 Dave Hansen
2013-11-22 5:22 ` Johannes Weiner
2013-11-22 6:18 ` Dave Hansen
2013-11-22 6:38 ` Johannes Weiner [this message]
2013-11-22 16:57 ` Dave Hansen
2013-11-26 10:32 ` Mel Gorman
2013-12-06 17:43 ` Dave Hansen
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=20131122063845.GM3556@cmpxchg.org \
--to=hannes@cmpxchg.org \
--cc=aarcange@redhat.com \
--cc=ak@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=dave.hansen@intel.com \
--cc=khilman@linaro.org \
--cc=linux-mm@kvack.org \
--cc=mgorman@suse.de \
--cc=paul.bollee@gmail.com \
--cc=riel@redhat.com \
--cc=tim.c.chen@linux.intel.com \
--cc=torvalds@linux-foundation.org \
--cc=zcalusic@bitsync.net \
/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