vGPU - which graphics card supported?
@savage79 What is the AMD advised way of knowing temperature of the card on Linux machines?
Ok. So I did some extensive testing with the FirePro S7150x2 card. While SR-IOV works OK in XCP-ng 8.1 with the 2.0 AMD host drivers, unfortunately there is no codec engine (VCE) support in the VMs. So while there is nice accelerated graphics in the VM itself, it is not possible to use any modern high performance remoting protocol that uses hardware encoding. My use case would've needed Parsec to work, but unfortunately Parsec requires VCE engine that is available only via passthrough and not SR-IOV. I have confirmation about this from AMD so VCE is not available for MxGPU on the S7150x2. It might work for the newer cards but the Instinc cards for example are not available retail, just through other channels. So for my use case, the only solution appears to be Intel GVT-g. Anyone had any success with GVT-g Quicksync support in VMs?
I wonder why AMD isn't selling its more modern Pro cards on the market directly?
Same reason nVidia isn't selling them directly either. I guess it's business policy. For some reason they are holding on to GPU virtualization technology very tightly. I understand the nVidia GeForce Now concept and the fact that they don't want competitors for their cloud gaming service. Also, other big cloud providers are working on their own solutions. SR-IOV is available technology since many years now and it is open source. It is a simple and elegant solution for resource sharing. MxGPU works, so it can be done. Why not enable SR-IOV on lesser performance cards or Quadro cards? That would make competing with the big GRID cards impossible but give access to the technology for people who need it.
Is anyone using vGPU on the XCP-ng yet? If so i would like to know the setup.
Iam running 1xE1230v5 on SuperMicro Server (X11SSL-F). Only got one PCI-E 3.0 x8 free for use. Would mind its not worth to get it a try on this machine.
vGPU is very interesting at all and would be a huge part to take over other virtualization solutions.
Guys, would it be possible to use a Matrox G200EH as a vGPU? I see my vm using a basic microsoft video
@gustavoninetyone -- it's not on the supported hardware list, hence highly unlikely. See Olivier's response near the top of this category to see what GPUs are supported.
@gustavoninetyone It would also be very slow (or very, very slow) over virtualisation instances, even if added. As it utilises the AGP interface for connection, this interface is very slow. Especially when compared to PCIe graphics cards especially those from the PCIe versions 3.0 and above.
So there would likely be possibly dropped frames and/or other issues both graphical and technical.
It would also limit what can be done in virtual machines, on hosts with it. Though it would have its uses, just bear in mind the performance cost.
If your going to go low cost for VDI then the use of Radeon Pro cards can get hardware video acceleration. Additionally there's open source drivers, for this acceleration so missing parts can be developed by community and driver can be forked if necessary. This would occur through the pass through. Though Radeon Pros are for workstations, I don't know how well the hardware acceleration works on the equivalent data centre graphics cards.
@gustavoninetyone @ChuckNorrison @olivierlambert A graphics card suitable for vGPU is AMD Radeon Pro V340 this card supports both SR-IOV and also AMD MxGPU Technologies. These have extremely high performance, with suitability for virtualisation.
Other cards with the capabilities from AMD are designed for workstations primarily. The workstations based Radeon Pro W6000 Series has these technologies. It would enable the capability for vGPU as it can be used for VDI.
Edit: If you can get a hold of a card from NVIDIA or a card using a chip from this list (https://www.nvidia.com/en-us/data-center/graphics-cards-for-virtualization/) then you can also use it as a vGPU.
Note also that with NVIDIA, for their vGPUs you'll need licensing which is itself fairly expensive, requires a license manager VM, and takes a bit of learning to get up and running. There are different licenses depending on the feature sets you require (for example, Quadro support requires a vWS license). See: https://www.nvidia.com/content/dam/en-zz/Solutions/design-visualization/solutions/resources/documents1/Virtual-GPU-Packaging-and-Licensing-Guide.pdf
AMD currently has no licensing requirements.
Guys, thanks a lot for the replies! Despite that, xcp-ng is a fantastic solution and has been helping me a lot since the last year!
So we still don't have a list of which "modern" GPUs support vGPU?
Use case: jellyfin/plex transcoding, Simple Windows VM workstation, etc.
@ScarfAntennae At a glance, there are those links :
https://github.com/DualCoder/vgpu_unlock - here there is a hack to make consumer GPUs able to provide vGPU
So, coming from all those links, we would have to do :
- Add entries to the docs or do a separate wiki regarding this subject
- Design a "test bed" with some guidance so people can test their setups and GPUs
- Design some methods (and which tools could be used) to perform benchmarks and find possible bottlenecks regarding driver, synchronization, pass-through issues etc.
We also would have to dig into specs of each vendor's GPU families and series, to find anything that could drag us to a more "precise" judgment on which ones does provide support for vGPU.
@olivierlambert Could we create a GPU dedicated section on docs, and perhaps provide some GPU HCL - Hardware Compatibility List - regarding vGPU and who knows what else stuff is relevant ?
Am I missing something here ?