From: arnd@arndb.de (Arnd Bergmann)
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC PATCH v2 2/4] Documentation: arm64/arm: dt bindings for numa.
Date: Wed, 10 Dec 2014 11:57:32 +0100 [thread overview]
Message-ID: <10603826.6Z6KUoI9qZ@wuerfel> (raw)
In-Reply-To: <54759991.50204@linaro.org>
On Wednesday 26 November 2014 17:12:49 Hanjun Guo wrote:
>
> Thanks for the detail information. I have the concerns about the distance
> for NUMA nodes, does the "ibm,associativity-reference-points" property can
> represent the distance between NUMA nodes?
>
> For example, a system with 4 sockets connected like below:
>
> Socket 0 <----> Socket 1 <----> Socket 2 <----> Socket 3
>
> So from socket 0 to socket 1 (maybe on the same board), it just need 1
> jump to access the memory, but from socket 0 to socket 2/3, it needs
> 2/3 jumps and the *distance* relative longer. Can
> "ibm,associativity-reference-points" property cover this?
>
Hi Hanjun,
I only today found your replies in my spam folder, I need to put you on
a whitelist so that doesn't happen again.
The above topology is not easy to represent, but I think it would work
like this (ignoring the threads/cores/clusters on the socket, which
would also need to be described in a full DT), using multiple logical
paths between the nodes:
socket 0
ibm,associativity = <0 0 0 0>, <1 1 1 0>, <2 2 0 0>, <3 0 0 0>;
socket 1
ibm,associativity = <1 1 1 1>, <0 0 0 1>, <2 2 2 1>, <3 3 1 1>;
socket 2
ibm,associativity = <2 2 2 2>, <0 0 2 2>, <1 1 1 2>, <3 3 3 2>;
socket 3
ibm,associativity = <3 3 3 3>, <0 3 3 3>, <1 1 3 3>, <2 2 2 3>;
This describes four levels or hierarchy, with the lowest level
being a single CPU core on one socket, and four paths between
the sockets. To compute the associativity between two sockets,
you need to look at each combination of paths to find the best
match.
Comparing sockets 0 and 1, the best matches are <1 1 1 0>
with <1 1 1 1>, and <0 0 0 0> with <0 0 0 1>. In each case, the
associativity is "3", meaning the first three entries match.
Comparing sockets 0 and 3, we have four equally bad matches
that each only match in the highest-level domain, e.g. <0 0 0 0>
with <0 3 3 3>, so the associativity is only "1", and that means
the two nodes are less closely associated than two neighboring
ones.
With the algorithm that powerpc uses to turn associativity into
distance, 2**(numlevels - associativity), this would put the
distance of neighboring nodes at "2", and the longest distance
at "8".
Arnd
next prev parent reply other threads:[~2014-12-10 10:57 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-21 21:23 [RFC PATCH v2 0/4] arm64:numa: Add numa support for arm64 platforms Ganapatrao Kulkarni
2014-11-21 21:23 ` [RFC PATCH v2 1/4] arm64: defconfig: increase NR_CPUS range to 2-128 Ganapatrao Kulkarni
2014-11-24 11:53 ` Arnd Bergmann
2014-12-09 1:57 ` Zi Shen Lim
2014-12-09 8:27 ` Arnd Bergmann
2014-12-24 12:33 ` Ganapatrao Kulkarni
2014-11-21 21:23 ` [RFC PATCH v2 2/4] Documentation: arm64/arm: dt bindings for numa Ganapatrao Kulkarni
2014-11-25 3:55 ` Shannon Zhao
2014-11-25 9:42 ` Hanjun Guo
2014-11-25 11:02 ` Arnd Bergmann
2014-11-25 13:15 ` Ganapatrao Kulkarni
2014-11-25 19:00 ` Arnd Bergmann
2014-11-25 21:09 ` Arnd Bergmann
2014-11-26 9:12 ` Hanjun Guo
2014-12-10 10:57 ` Arnd Bergmann [this message]
2014-12-11 9:16 ` Hanjun Guo
2014-12-12 14:20 ` Arnd Bergmann
2014-12-15 3:50 ` Hanjun Guo
2014-11-30 16:38 ` Ganapatrao Kulkarni
2014-11-30 17:13 ` Arnd Bergmann
2014-11-25 14:54 ` Hanjun Guo
2014-11-26 2:29 ` Shannon Zhao
2014-11-26 16:51 ` Arnd Bergmann
2014-11-21 21:23 ` [RFC PATCH v2 3/4] arm64:thunder: Add initial dts for Cavium's Thunder SoC in 2 Node topology Ganapatrao Kulkarni
2014-11-24 11:59 ` Arnd Bergmann
2014-11-24 16:32 ` Roy Franz
2014-11-24 17:01 ` Arnd Bergmann
2014-11-25 12:38 ` Ard Biesheuvel
2014-11-25 12:45 ` Arnd Bergmann
2014-11-24 17:01 ` Marc Zyngier
2014-11-21 21:23 ` [RFC PATCH v2 4/4] arm64:numa: adding numa support for arm64 platforms Ganapatrao Kulkarni
2014-12-06 9:36 ` Ashok Kumar
[not found] ` <5482ce36.c9e2420a.5d40.71c7SMTPIN_ADDED_BROKEN@mx.google.com>
2014-12-06 18:50 ` Ganapatrao Kulkarni
2014-12-10 12:26 ` Ashok Kumar
[not found] ` <54883be3.8284440a.3154.ffffa34fSMTPIN_ADDED_BROKEN@mx.google.com>
2014-12-15 18:16 ` Ganapatrao Kulkarni
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=10603826.6Z6KUoI9qZ@wuerfel \
--to=arnd@arndb.de \
--cc=linux-arm-kernel@lists.infradead.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