As it is today, the device plugin only advertises one device per IOMMU group.
Some hardware boards by default can have more than 1 GPU or NVSwitch per IOMMU group.
In this case the number of allocatable devices on the node will be equal to the number of IOMMU groups and will be less than the actual number of devices.
We have a real customer use case to create a single Kubevirt VM on a node and passthrough all Nvidia GPUs and NVSwitches, but currently this is not possible.
The proposal is to allow the device plugin to conditionally register all the devices when explicitly asked by the deployer(for example by setting a CLI flag).
For more details and implementation reference, see: kubevirt/kubevirt#13347
As it is today, the device plugin only advertises one device per IOMMU group.
Some hardware boards by default can have more than 1 GPU or NVSwitch per IOMMU group.
In this case the number of allocatable devices on the node will be equal to the number of IOMMU groups and will be less than the actual number of devices.
We have a real customer use case to create a single Kubevirt VM on a node and passthrough all Nvidia GPUs and NVSwitches, but currently this is not possible.
The proposal is to allow the device plugin to conditionally register all the devices when explicitly asked by the deployer(for example by setting a CLI flag).
For more details and implementation reference, see: kubevirt/kubevirt#13347