Messages in this thread | | | Date | Wed, 18 May 2022 16:05:03 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH 4/4] sched/numa: Adjust imb_numa_nr to a better approximation of memory channels |
| |
On Wed, May 18, 2022 at 12:15:39PM +0100, Mel Gorman wrote:
> I'm not aware of how it can be done in-kernel on a cross architectural > basis. Reading through the arch manual, it states how many channels are > in a given processor family and it's available during memory check errors > (apparently via the EDAC driver). It's sometimes available via PMUs but > I couldn't find a place where it's generically available for topology.c > that would work on all x86-64 machines let alone every other architecture.
So provided it is something we want (below) we can always start an arch interface and fill it out where needed.
> It's not even clear if SMBIOS was parsed in early boot whether
We can always rebuild topology / update variables slightly later in boot.
> it's a > good idea. It could result in difference imbalance thresholds for each > NUMA domain or weird corner cases where assymetric NUMA node populations > would result in run-to-run variance that are difficult to analyse.
Yeah, maybe. OTOH having a magic value that's guestimated based on hardware of the day is something that'll go bad any moment as well.
I'm not too worried about run-to-run since people don't typically change DIMM population over a reboot, but yes, there's always going to be corner cases. Same with a fixed value though, that's also going to be wrong.
| |