Closed alkeryn closed 2 years ago
Hey @alkeryn. If you're an Nvidia device user during install we ask the user if they'd like to use the auto-merge script (https://github.com/Arc-Compute/LibVF.IO/blob/master/scripts/funcs-libvfio.sh#L507) however unlocking is not required as we don't need to inject unlocks in nvidia-vgpu daemons - rather if the user chooses to use GPU Virtual Machine (GVM) when prompted then we disable blob programs and use free/libre programs instead: https://github.com/Arc-Compute/LibVF.IO/blob/e283a0ced0187701cc400985cac6557aa3567e74/scripts/funcs-libvfio.sh#L573 https://docs.linux-gvm.org/gvm-user/d5/dc5/gvm-cli_8cpp.html https://docs.linux-gvm.org/gvm-user/d1/d21/gvm-mgr_8cpp.html
I hope I've answered your question with enough thoroughness so I'm going to close the issue for now but if you have more questions about this I can open it back up again. :)
Hey ! thanks for the reply ! i have never heard of GVM before. we still need the nvidia-merged driver installed though right ?
Also, will cuda still work on the host ? what about the guest ?
thank you very much ! :)
Hi @alkeryn sorry for taking awhile to reply to this - I'm outside of my usual timezone currently and dealing with a bit of jet lag haha.
The driver merge is useful for desktop computers and some laptops where the device should still output video on the host so you can see your VMs - in some cases that isn't necessary (for example in servers and embedded where there is no display connected) so the auto-merge is optional. Drivers like i915 Xe SR-IOV output video off the physical function/HDMI/DisplayPort out by default so it can be considered a 'merged driver' as it works with SR-IOV virtual functions for use-cases with and without host video output by default. You can read more about that here: https://openmdev.io/index.php/Merged_Drivers
As for CUDA on the host yes this works. CUDA in the guest requires that you run a para-virtual GRID guest driver with a valid license from Nvidia. You can read more about that here: https://www.nvidia.com/en-us/data-center/buy-grid/
Hey i was curious if this tool relies on vgpu_unlock or is its own thing entirely ? if so how is it different internally ?
thank you very much for the clarifications !