GPU Passthrough - Host boot GPU behaves strangely?

TheFunk

Member
Oct 25, 2016
35
4
8
31
Hi! I've been messing around on reddit's homelab page for the past couple months, and eventually the idea came to me that I wanted to build a ridiculous VM host so that my roommates and I can game together on the same machine.

It was a huge pain in the ass, but I have CAT6 Ethernet run throughout the house now. Each room has 2 data jacks which run back to my server rack in the basement and can be bonded with LACP at the switch. My thin clients have dual gigabit LAN connections, and from what I'm hearing, SPICE supports multiple sessions, meaning it can take advantage of the additional throughput as well.

The part I'm most concerned with configuring properly is the GPU passthrough. The plan is to have 3 RX 480's installed in the host machine (Supermicro X10DAI board) and then pass all of those through to VMs. From what I'm reading though, the host's boot gpu can sometimes behave abnormally because of its configuration coming from a system shadow file.

If that is accurate, I'd like to get around this somehow, just in case that card should have issues come configuration day. I have no spare (uncovered) PCIE/PCI ports, however a low profile riser cable might slip underneath one of the cards so that I could install a small $20 graphics card to use as the "boot gpu". Otherwise, what about DisplayLink USB adapters? Could I plug a USB adapter into my server and convince it to use that as the boot gpu?
 
Never used spice before but I believe it employs its own virtual gpu (qxl). Unless it's able to render on the primary gpu and pass the framebuffer to qxl, I don't think this will work. At the least, I wouldn't expect reasonable gaming performance.

As for the vbios issue, you can make a dump of the rom and use it when passing through the gpu (romfile is not a defined parameter so you'll need to monkey with QemuServer.pm).

You can't use a usb adapter as a boot gpu.
 
  • Like
Reactions: TheFunk
Never used spice before but I believe it employs its own virtual gpu (qxl). Unless it's able to render on the primary gpu and pass the framebuffer to qxl, I don't think this will work. At the least, I wouldn't expect reasonable gaming performance.

As for the vbios issue, you can make a dump of the rom and use it when passing through the gpu (romfile is not a defined parameter so you'll need to monkey with QemuServer.pm).

You can't use a usb adapter as a boot gpu.

Thanks for the reply! I'll have to dump the rom then. That's a bummer about using a USB adapter, but I mean, I know what I signed up for with this one. No such thing as an easy fix.

About Spice though...I hadn't even noticed that! It looks like the QXL driver is necessary, but I'm going to do some more research. In the meantime, do you know of any other protocol I can use for remote access/usb passthrough from my thin clients? I could use plain old RDP but that feels like a hacked together solution to me.
 
I think I found my solution, which is cool because even though I know RDP is working alright, I want a better answer. I also would like to integrate as many of the features of SPICE as possible into my finished product. I'm looking at the newer AMD and NVIDIA cards, and apparently they have hardware video encoders built in these days, for people who want to do live streams. Both support multiple streams as well. AMD has an API for their's called VCE. So what I need, is a video streaming protocol that uses AMD's VCE. In this way, I get hardware accelerated real-time streaming without a performance penalty and I can use OVMF passthrough as opposed to trying to use something like virgl. The USB redirection looks like it can be separated from SPICE. So...Yahtzee. I know what I need to do.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!