Re: [RFC PATCH v3 0/4] Node Weights and Weighted Interleave

From: Jonathan Cameron
Date: Fri Nov 03 2023 - 10:16:48 EST


On Fri, 03 Nov 2023 15:45:13 +0800
"Huang, Ying" <ying.huang@xxxxxxxxx> wrote:

> Gregory Price <gregory.price@xxxxxxxxxxxx> writes:
>
> > On Thu, Nov 02, 2023 at 10:47:33AM +0100, Michal Hocko wrote:
> >> On Wed 01-11-23 12:58:55, Gregory Price wrote:
> >> > Basically consider: `numactl --interleave=all ...`
> >> >
> >> > If `--weights=...`: when a node hotplug event occurs, there is no
> >> > recourse for adding a weight for the new node (it will default to 1).
> >>
> >> Correct and this is what I was asking about in an earlier email. How
> >> much do we really need to consider this setup. Is this something nice to
> >> have or does the nature of the technology requires to be fully dynamic
> >> and expect new nodes coming up at any moment?
> >>
> >
> > Dynamic Capacity is expected to cause a numa node to change size (in
> > number of memory blocks) rather than cause numa nodes to come and go, so
> > maybe handling the full node hotplug is a bit of an overreach.
>
> Will node max bandwidth change with the number of memory blocks?

Typically no as even a single memory extent would probably be interleaved
across all the actual memory devices (think DIMMS for simplicity) within
a CXL device. I guess a device 'could' do some scaling based on capacity
provided to a particular host but feels like they should be separate controls.
I don't recall there being anything in the specification to suggest the
need to recheck the CDAT info for updates when DC add / remove events happen.

Mind you, who knows in future :) We'll point out in relevant forums that
doing so would be very hard to handle cleanly in Linux.

Jonathan