※ 引述《MACROSS2K (MACROSS2K)》之銘言:
: 由於proxmox不是NVIDIA支援項目,所以我猜proxmox是設計成直接讀取
: 給其他hypervisor用的驅動程式,例如VMware ESXi
: 但因為可能有license鎖,所以可能要花時間去改動一些細節才能
: 讓proxmox利用
這邊多解釋一下好了,雖然說推文內也有人提到部分
Proxmox基本上底層的Hypervisor即是Linux KVM,這部分NVIDIA目前也已經支援了
大約是2020還2021年的時候開放的,且一樣需要授權才可以使用
而且記得沒錯還需要在在自家架一個授權管理伺服器
而在KVM的實現方式,基本上跟NVIDIA原本差不多
就是利用Linux Kernel內的Mediated device這個driver(簡稱mdev)
並且配合VFIO (KVM主流的GPU passthrough用driver)來達成
簡單來說,NVIDIA驅動會先根據使用者想要的vGPU規格,生成幾個vGPU後
由mdev統一納管,再透過VFIO把這些vGPU給掛載進去,就是這麼簡單
因為兩者之間是可以直接連動的,所以不需要把vGPU的VID:PID先寫在開機參數內
就可以做到單卡生成多個vGPU,並passthrough給多個VM使用
關於這個還有幾個題外話
1. mdev同時也支援Intel的vGPU,稱為GVT-g
但目前還不支援ARC的GPU,就算有估計也是從ARC PRO支援起
2. NVIDIA開放KVM也能使用NVIDIA vGPU功能後沒多久,也移除了自己家的驅動對於
在KVM上做passthrough的限制,記得是2021年的事情
否則過去要passthrough N卡需要做不少設定
3. 其實在NVIDIA宣布vGPU全面開放支援KVM之前,早就可以在KVM上面使用vGPU了(2016年)
只是那時候是RedHat獨佔,必須要購買RHEL才可以用