From: Peter Zijlstra <peterz@infradead.org>
To: paulmck@linux.vnet.ibm.com
Cc: linux-kernel@vger.kernel.org, mingo@elte.hu,
laijs@cn.fujitsu.com, dipankar@in.ibm.com,
akpm@linux-foundation.org, mathieu.desnoyers@polymtl.ca,
josh@joshtriplett.org, niv@us.ibm.com, tglx@linutronix.de,
rostedt@goodmis.org, Valdis.Kletnieks@vt.edu,
dhowells@redhat.com, eric.dumazet@gmail.com, darren@dvhart.com,
fweisbec@gmail.com, patches@linaro.org
Subject: Re: [PATCH RFC tip/core/rcu 6/6] rcu: Reduce cache-miss initialization latencies for large systems
Date: Thu, 26 Apr 2012 17:28:57 +0200 [thread overview]
Message-ID: <1335454137.13683.95.camel@twins> (raw)
In-Reply-To: <20120426141213.GB2407@linux.vnet.ibm.com>
On Thu, 2012-04-26 at 07:12 -0700, Paul E. McKenney wrote:
> On Thu, Apr 26, 2012 at 02:51:47PM +0200, Peter Zijlstra wrote:
> > Wouldn't it be much better to match the rcu fanout tree to the physical
> > topology of the machine?
>
> From what I am hearing, doing so requires me to morph the rcu_node tree
> at run time. I might eventually become courageous/inspired/senile
> enough to try this, but not yet. ;-)
Yes, boot time with possibly some hotplug hooks.
> Actually, some of this topology shifting seems to me like a firmware
> bug. Why not arrange the Linux-visible numbering in a way to promote
> locality for code sequencing through the CPUs?
I'm not sure.. but it seems well established on x86 to first enumerate
the cores (thread 0) and then the sibling threads (thread 1) -- one
'advantage' is that if you boot with max_cpus=$half you get all cores
instead of half the cores.
OTOH it does make linear iteration of the cpus 'funny' :-)
Also, a fanout of 16 is nice when your machine doesn't have HT and has a
2^n core count, but some popular machines these days have 6/10 cores per
socket, resulting in your fanout splitting caches.
next prev parent reply other threads:[~2012-04-26 15:29 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-23 16:41 [PATCH RFC 0/6] Miscellaneous RCU fixes for 3.5 Paul E. McKenney
2012-04-23 16:42 ` [PATCH RFC tip/core/rcu 1/6] rcu: Stabilize use of num_online_cpus() for GP short circuit Paul E. McKenney
2012-04-23 16:42 ` [PATCH RFC tip/core/rcu 2/6] rcu: List-debug variants of rcu list routines Paul E. McKenney
2012-04-23 16:42 ` [PATCH RFC tip/core/rcu 3/6] rcu: Replace list_first_entry_rcu() with list_first_or_null_rcu() Paul E. McKenney
2012-04-23 16:42 ` [PATCH RFC tip/core/rcu 4/6] rcu: Clarify help text for RCU_BOOST_PRIO Paul E. McKenney
2012-04-26 12:46 ` Peter Zijlstra
2012-04-26 17:28 ` Paul E. McKenney
2012-04-23 16:42 ` [PATCH RFC tip/core/rcu 5/6] rcu: Make __kfree_rcu() less dependent on compiler choices Paul E. McKenney
2012-04-26 12:48 ` Peter Zijlstra
2012-04-26 13:29 ` Jan Engelhardt
2012-04-26 13:50 ` Peter Zijlstra
2012-04-23 16:42 ` [PATCH RFC tip/core/rcu 6/6] rcu: Reduce cache-miss initialization latencies for large systems Paul E. McKenney
2012-04-26 12:51 ` Peter Zijlstra
2012-04-26 14:12 ` Paul E. McKenney
2012-04-26 15:28 ` Peter Zijlstra [this message]
2012-04-26 16:15 ` Paul E. McKenney
2012-04-26 19:41 ` Peter Zijlstra
2012-04-26 19:47 ` Peter Zijlstra
2012-04-26 20:29 ` Paul E. McKenney
2012-04-26 22:04 ` Peter Zijlstra
2012-04-26 20:28 ` Paul E. McKenney
2012-04-26 22:01 ` Peter Zijlstra
2012-04-27 14:17 ` Paul E. McKenney
2012-04-27 4:36 ` Mike Galbraith
2012-04-27 15:15 ` Paul E. McKenney
2012-04-28 4:42 ` Mike Galbraith
2012-04-28 17:21 ` Paul E. McKenney
2012-04-29 3:54 ` Mike Galbraith
2012-04-24 15:35 ` [PATCH RFC tip/core/rcu 1/6] rcu: Stabilize use of num_online_cpus() for GP short circuit Srivatsa S. Bhat
2012-04-24 16:50 ` Paul E. McKenney
2012-04-24 17:46 ` Srivatsa S. Bhat
2012-05-07 3:47 ` Rusty Russell
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=1335454137.13683.95.camel@twins \
--to=peterz@infradead.org \
--cc=Valdis.Kletnieks@vt.edu \
--cc=akpm@linux-foundation.org \
--cc=darren@dvhart.com \
--cc=dhowells@redhat.com \
--cc=dipankar@in.ibm.com \
--cc=eric.dumazet@gmail.com \
--cc=fweisbec@gmail.com \
--cc=josh@joshtriplett.org \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@polymtl.ca \
--cc=mingo@elte.hu \
--cc=niv@us.ibm.com \
--cc=patches@linaro.org \
--cc=paulmck@linux.vnet.ibm.com \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
/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