qemu/include/hw/ppc
Reza Arbab a6030d7e0b 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>
2020-07-20 09:21:39 +10:00
..
fdt.h
mac_dbdma.h
openpic_kvm.h
openpic.h
pnv_core.h ppc/pnv: Add support for "hostboot" mode 2020-02-02 14:07:57 +11:00
pnv_homer.h
pnv_lpc.h
pnv_occ.h
pnv_pnor.h ppc/pnv: fix check on return value of blk_getlength() 2020-01-08 12:01:14 +11:00
pnv_psi.h pnv/psi: Correct the pnv-psi* devices not to be sysbus devices 2020-06-15 21:36:21 +02:00
pnv_xive.h pnv/xive: Use device_class_set_parent_realize() 2020-01-08 11:01:59 +11:00
pnv_xscom.h ppc/pnv: Add models for POWER8 PHB3 PCIe Host bridge 2020-02-02 14:07:57 +11:00
pnv.h ppc/pnv: Create BMC devices only when defaults are enabled 2020-04-07 08:55:11 +10:00
ppc4xx.h ppc/{ppc440_bamboo, sam460ex}: use memdev for RAM 2020-02-19 16:50:00 +00:00
ppc_e500.h
ppc.h hw/ppc/prep: Remove the deprecated "prep" machine and the OpenHackware BIOS 2020-02-02 14:07:57 +11:00
spapr_cpu_core.h ppc/spapr: Move GPRs setup to one place 2020-03-17 15:08:50 +11:00
spapr_drc.h spapr: Don't use spapr_drc_needed() in CAS code 2020-02-21 09:15:04 +11:00
spapr_irq.h
spapr_nvdimm.h spapr: Add NVDIMM device support 2020-02-21 09:15:04 +11:00
spapr_ovec.h spapr: Rename DT functions to newer naming convention 2020-03-17 17:00:19 +11:00
spapr_rtas.h
spapr_tpm_proxy.h
spapr_vio.h spapr: Implement get_dt_compatible() callback 2020-02-02 14:07:57 +11:00
spapr_xive.h spapr/xive: Use device_class_set_parent_realize() 2020-01-08 11:01:59 +11:00
spapr.h spapr: Add a new level of NUMA for GPUs 2020-07-20 09:21:39 +10:00
xics_spapr.h
xics.h ppc/pnv: Add models for POWER8 PHB3 PCIe Host bridge 2020-02-02 14:07:57 +11:00
xive_regs.h spapr: Fix typos in comments and macro indentation 2020-06-26 09:22:30 +10:00
xive.h xive: Add a "presenter" link property to the TCTX object 2020-01-08 11:01:59 +11:00