Hi,
Imagine I have a proxmox server with four active desktop, two windows and two linux
Is it possible to swap the GPU between the VM at will and efficiently ?
I am curious if GPU passthrough settings can be changed at all while the VM is running, to begin with ?
Then, does swapping the GPU causes the VMs to crash or the GPU itself to enter a crash state ?
How long does it take, say, compared with the time of switching betweem ports of a KVM ?
Would it make sense to Live snap shot and suspend the VMs, connect the GPU to the desired one and then unfreeze it ? And then when you switch again, freeze the VM, switch gpu, unfreeze new VM ?
Would the GPU need to "reboot" between this swapping ? Is it going to be like pressing ctrl+win+shift+b and restarting the video system each time ?
Would it cause a running, 3d or video compression using application to crash ?
What happens if two VMs are trying to GPU passthrough at the same time ? They both crash and crash the GPU ?
How do I implement easy switching logic to work from where I am interacting these VMs ?
That was a lot of questions, I wanted to create this list first and put it out there to find if there are other people trying this.
What I have in mind is, multiple things really.
First would be my desktop computer, running proxmox, all my screens are connected to the physical GPU. Right now it just shows the proxmox login prompt.
I would like the physical outputs to display the content of the VM instead of the content of the proxmox host.
I also access my VMs, from other computers, in fullscreen using moonlight/sunshine, but when the GPU detaches, my moonlight client will become unoperative. So the scripts have to be efficient, I run the script and reconnect, it should be the new VM, or else I will have to start logging into the console and stuff and that's not going to a good experience.
And then there will be more complications, such as VM and CT containers running parrallal AI applications such as stable diffusion and oogabooga text generator UI, which need the host to use the GPU, and it's unclear how I can swap between passthrough GPU and host using GPU without rebooting the entire thing !
Imagine I have a proxmox server with four active desktop, two windows and two linux
Is it possible to swap the GPU between the VM at will and efficiently ?
I am curious if GPU passthrough settings can be changed at all while the VM is running, to begin with ?
Then, does swapping the GPU causes the VMs to crash or the GPU itself to enter a crash state ?
How long does it take, say, compared with the time of switching betweem ports of a KVM ?
Would it make sense to Live snap shot and suspend the VMs, connect the GPU to the desired one and then unfreeze it ? And then when you switch again, freeze the VM, switch gpu, unfreeze new VM ?
Would the GPU need to "reboot" between this swapping ? Is it going to be like pressing ctrl+win+shift+b and restarting the video system each time ?
Would it cause a running, 3d or video compression using application to crash ?
What happens if two VMs are trying to GPU passthrough at the same time ? They both crash and crash the GPU ?
How do I implement easy switching logic to work from where I am interacting these VMs ?
That was a lot of questions, I wanted to create this list first and put it out there to find if there are other people trying this.
What I have in mind is, multiple things really.
First would be my desktop computer, running proxmox, all my screens are connected to the physical GPU. Right now it just shows the proxmox login prompt.
I would like the physical outputs to display the content of the VM instead of the content of the proxmox host.
I also access my VMs, from other computers, in fullscreen using moonlight/sunshine, but when the GPU detaches, my moonlight client will become unoperative. So the scripts have to be efficient, I run the script and reconnect, it should be the new VM, or else I will have to start logging into the console and stuff and that's not going to a good experience.
And then there will be more complications, such as VM and CT containers running parrallal AI applications such as stable diffusion and oogabooga text generator UI, which need the host to use the GPU, and it's unclear how I can swap between passthrough GPU and host using GPU without rebooting the entire thing !