[v2] docs/mm: Physical Memory: add example of interleaving nodes
Commit Message
From: "Mike Rapoport (IBM)" <rppt@kernel.org>
Add an example of memory layout with interleaving nodes where even memory
banks belong to node 0 and odd memory banks belong to node 1
Suggested-by: Michal Hocko <mhocko@kernel.org>
Signed-off-by: Mike Rapoport (IBM) <rppt@kernel.org>
---
v2:
* Wording update (Bagas)
* Add forgotten Suggested-by
v1: https://lore.kernel.org/all/20230211102207.1267058-1-rppt@kernel.org
Documentation/mm/physical_memory.rst | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
base-commit: e076f253283c3e55a128fa9665c0e6cd8146948d
Comments
On Sun, Feb 12, 2023 at 11:54:45AM +0200, Mike Rapoport wrote:
> +Note, that memory banks may belong to interleaving nodes. In the example
> +below an x86 machine has 16Gbytes or RAM in 4 memory banks, even banks
> +belong to node 0 and odd banks belong to node 1::
s/or RAM/of RAM/
The "Note," is superfluous, you can just write:
Memory banks may belong to interleaved nodes.
And I think we prefer the newer form "GiB" for new documentation.
> +
> + 0 4G 8G 12G 16G
> + +-------------+ +-------------+ +-------------+ +-------------+
> + | node 0 | | node 1 | | node 0 | | node 1 |
> + +-------------+ +-------------+ +-------------+ +-------------+
> +
> + 0 16M 4G
> + +-----+-------+ +-------------+ +-------------+ +-------------+
> + | DMA | DMA32 | | NORMAL | | NORMAL | | NORMAL |
> + +-----+-------+ +-------------+ +-------------+ +-------------+
> +
> +In such case node 0 will span from 0 to 12 Gbytes and node 1 will span from
> +4 to 16 Gbytes.
s/such/this/ (and I'd use GiB again)
On Sun, Feb 12, 2023 at 11:50:08AM +0000, Matthew Wilcox wrote:
> On Sun, Feb 12, 2023 at 11:54:45AM +0200, Mike Rapoport wrote:
> > +Note, that memory banks may belong to interleaving nodes. In the example
> > +below an x86 machine has 16Gbytes or RAM in 4 memory banks, even banks
> > +belong to node 0 and odd banks belong to node 1::
>
> s/or RAM/of RAM/
Thanks
> The "Note," is superfluous, you can just write:
>
> Memory banks may belong to interleaved nodes.
Ok
> And I think we prefer the newer form "GiB" for new documentation.
I've used Gbytes in previous examples, so I'd prefer to keep it consistent
We can swipe s/Gbytes/GiB/g later.
> > +
> > + 0 4G 8G 12G 16G
> > + +-------------+ +-------------+ +-------------+ +-------------+
> > + | node 0 | | node 1 | | node 0 | | node 1 |
> > + +-------------+ +-------------+ +-------------+ +-------------+
> > +
> > + 0 16M 4G
> > + +-----+-------+ +-------------+ +-------------+ +-------------+
> > + | DMA | DMA32 | | NORMAL | | NORMAL | | NORMAL |
> > + +-----+-------+ +-------------+ +-------------+ +-------------+
> > +
> > +In such case node 0 will span from 0 to 12 Gbytes and node 1 will span from
> > +4 to 16 Gbytes.
>
> s/such/this/ (and I'd use GiB again)
@@ -114,6 +114,25 @@ RAM equally split between two nodes, there will be ``ZONE_DMA32``,
| DMA32 | NORMAL | MOVABLE | | NORMAL | MOVABLE |
+---------+----------+-----------+ +------------+-------------+
+
+Note, that memory banks may belong to interleaving nodes. In the example
+below an x86 machine has 16Gbytes or RAM in 4 memory banks, even banks
+belong to node 0 and odd banks belong to node 1::
+
+
+ 0 4G 8G 12G 16G
+ +-------------+ +-------------+ +-------------+ +-------------+
+ | node 0 | | node 1 | | node 0 | | node 1 |
+ +-------------+ +-------------+ +-------------+ +-------------+
+
+ 0 16M 4G
+ +-----+-------+ +-------------+ +-------------+ +-------------+
+ | DMA | DMA32 | | NORMAL | | NORMAL | | NORMAL |
+ +-----+-------+ +-------------+ +-------------+ +-------------+
+
+In such case node 0 will span from 0 to 12 Gbytes and node 1 will span from
+4 to 16 Gbytes.
+
.. _nodes:
Nodes