]> git.proxmox.com Git - mirror_qemu.git/commit
spapr: Add a new level of NUMA for GPUs
authorReza Arbab <arbab@linux.ibm.com>
Thu, 16 Jul 2020 22:56:55 +0000 (17:56 -0500)
committerDavid Gibson <david@gibson.dropbear.id.au>
Sun, 19 Jul 2020 23:21:39 +0000 (09:21 +1000)
commita6030d7e0b35a23c82e4a765b53dc3847bcdb4d1
tree0476fd6630d17bd727a20779aeae771348bd7011
parenta4beb5f5d4672400a76cc0551c4f0878e42d921c
spapr: Add a new level of NUMA for GPUs

NUMA nodes corresponding to GPU memory currently have the same
affinity/distance as normal memory nodes. Add a third NUMA associativity
reference point enabling us to give GPU nodes more distance.

This is guest visible information, which shouldn't change under a
running guest across migration between different qemu versions, so make
the change effective only in new (pseries > 5.0) machine types.

Before, `numactl -H` output in a guest with 4 GPUs (nodes 2-5):

node distances:
node   0   1   2   3   4   5
  0:  10  40  40  40  40  40
  1:  40  10  40  40  40  40
  2:  40  40  10  40  40  40
  3:  40  40  40  10  40  40
  4:  40  40  40  40  10  40
  5:  40  40  40  40  40  10

After:

node distances:
node   0   1   2   3   4   5
  0:  10  40  80  80  80  80
  1:  40  10  80  80  80  80
  2:  80  80  10  80  80  80
  3:  80  80  80  10  80  80
  4:  80  80  80  80  10  80
  5:  80  80  80  80  80  10

These are the same distances as on the host, mirroring the change made
to host firmware in skiboot commit f845a648b8cb ("numa/associativity:
Add a new level of NUMA for GPU's").

Signed-off-by: Reza Arbab <arbab@linux.ibm.com>
Message-Id: <20200716225655.24289-1-arbab@linux.ibm.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/ppc/spapr.c
hw/ppc/spapr_pci.c
hw/ppc/spapr_pci_nvlink2.c
include/hw/pci-host/spapr.h
include/hw/ppc/spapr.h