GPU virtualization (virtio-gpu, virGL, sr-iov, MxGPU, VDI, spice)


matthope

19 posts in this topic Last Reply

Recommended Posts

Hi,

 

The issue:

 

At the moment, there is two way to use a 3D application in a VM with unRAID. First way is to passtrough a GPU to it. While this solution is nice and work well if you have only 1 or 2 VM's that need GPU acceleration, it's not ideal when you need multiples accelerated VM's. The second way is to use the intel GVT capabilities, however, the UPT is not super well implemented yet and the graphical power of those IGD are not that great.

 

The solution:

 

It would be nice if you could include GPU virtualisation (vGPU) solution, there is more than one solution to achieve this, but I think virtio-gpu and virGL is our best shoot. There is also MxGPU with the AMD GIM driver or Nvidia GRID but it require expensive gpu card to work. 

 

If virtio-gpu is implemented, it would be nice to see spice implemented as well since its more efficient than a VNC.

 

Also I might dreaming here, but if there was a way to use one GPU to display more than one VM desktop. Example, if there 3 hdmi output on the card, display the desktop on the VM 1 on the HDM1 and the VM 2 on the HDMI2 and so on. 

 

Some interestings links :

 

https://www.spice-space.org/spice-user-manual.html 

https://www.kraxel.org/blog/2016/09/using-virtio-gpu-with-libvirt-and-spice/

https://www.kraxel.org/slides/qemu-gfx-2016/

 

Regards, Mathieu

Link to post
  • 5 months later...
  • 1 month later...
  • 1 year later...
  • 2 months later...

For the Intel GVT-g (mediated virtual GPUs) I think all that is needed is for these modules to be included: kvmgt vfio-iommu-type1 vfio-mdev

 

I wouldn't ask for a whole web GUI, I'd be happy if I could play around with it editing XML and generating the mediated devices from the command line.

Link to post
  • 3 months later...
  • 3 months later...
  • 2 weeks later...
  • 3 weeks later...

Better VM Graphics needs to be a priority, i have gone through 4 different computers and 3 different graphic cards all with mixed mostly failed results, and the videos by Spaceinvader and others are out of date and in those videos issues are pointed out that should have been addressed by now, and i have not found a updated list of supported tested hardware ether, the wiki by unraid is very out of date.

 

Unraid is looking less and less of a option for me unless the whole VM issues get fixed/updated

Link to post
5 hours ago, mark seaton said:

Better VM Graphics needs to be a priority, i have gone through 4 different computers and 3 different graphic cards all with mixed mostly failed results, and the videos by Spaceinvader and others are out of date and in those videos issues are pointed out that should have been addressed by now, and i have not found a updated list of supported tested hardware ether, the wiki by unraid is very out of date.

 

Unraid is looking less and less of a option for me unless the whole VM issues get fixed/updated

This feature request has nothing to do with your problem. Based on your previous post, it's GPU pass-through, which isn't GPU virtualisation.

 

Also, SIO tutorials with regards to pass through are very certainly NOT outdated.

 

While I understand your plight of not being able to get PCIe pass-through to work, I don't think you appreciate the danger of having a "list of supported hardware" when it comes to PCIe pass-through.

There are nuances that would be impossible to put in a generic list. For example (just to name some that I know of),

  • Some cards work but only if it isn't initialised at boot
    • Some motherboards don't allow you to change primary display
    • Some motherboards disable onboard graphics if dedicated card is installed
    • Some motherboards (BIOS) + CPU combo just downright don't cooperate with passthrough
    • UEFI boot may or may not initialise display
  • Motherboard BIOS e.g. different BIOS for different vendors may or may not work and there's no way to know in advance without someone actually testing it out
  • Some cards work with quirks if already initialised at boot e.g. reset issue
    • There are workarounds for reset issue but may or may not work
  • Some cards work with special kernel patch e.g. Vega
    • Kernel patch would break other working cards so can't be released with general Unraid release
  • Dumping vbios
    • User cannot dump own vbios and download wrong vbios from TechPowerup
    • Dump vbios incorrectly
  • New hardware / technology / kernel version breaking existing working hardware (or making previously-not-working-hardware work)
    • Plenty of examples with Ryzen BIOS updates
    • Threadripper "dirty patch", PCIe root port patch etc.
    • 10th-gen iGPU can't be passed through but 8th-gen is ok

So having a "list of supported hardware" would put the burden and responsibility on LT to provide support for things that would be virtually impossible to support without being physically at the site. A lot to ask for a small team with such cheap product (if you know how much Microsoft and the like charge for that kind of support).

 

 

Edited by testdasi
Link to post
  • 4 months later...
  • 5 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.