显卡虚拟化系列一,消费极N卡虚拟化体验
all in one玩家一定又一个非常头疼的问题,CPU能虚拟化,硬盘能虚拟化,网卡能虚拟化,唯独显卡的虚拟化特别的头痛。虽然说all in one服务器一般来说都不是用来玩游戏的,但是一些操作系统的图形化界面需要GPU加速才能获得流畅的体验,有一些程序也需要GPU的加速才能运行,比如jellyfin和mby的显卡加速转码的支持。但是这些寻虚拟机提供的虚拟显卡都不能很好测支持。为满足需求只能将显卡直通给虚拟机。但是显卡有限不不可能每个虚拟机都能分配到物理显卡,就显卡充足主板所提供的PCI-E接口也不足以安装那么多张的显卡。
最好的解决办法就是显卡虚拟化,将一张显卡拆分成多张虚拟显卡直通给虚拟机,让虚拟机可以共享物理显卡上的资源。目前显卡虚拟化只要有4个选择,nVidia GRID方案,AMD SR-IOV方案,Intel gvt-g,微软 GPU-PV。
支持虚拟化的的N卡目前只有少数的几张价格昂贵的tesla和quadro专业卡,不过老黄的专业卡和消费卡核心是相同的,通过显存和bios来区分。因此我们可以借助在gtihub上的vgpu-unlock来让消费卡支持显卡虚拟化功能
目前vgpu-unlock项目只支持linux平台,因此这次教程选择的虚拟化平台是大家熟悉的proxmox ve。
硬件配置如下
CPU:I5-4590
主板:华擎Z87极限玩家4
内存:4X4GB DDR3
显卡:GTX1050
虚拟化平台:proxmox ve 7.02
我安装了两个虚拟机,分别是Windows10和ubuntu20.04.启用显卡虚拟化功能将GTX1050拆分为了两个虚拟显卡直通给他们。因为gtx1050的显存只有2G所以只能拆分为两个虚拟显卡,所以这里只能演示两个虚拟机同时运行的情况。
系统:windows 10
VCPU:4核心4线程
内存:4gb
VGPU:gtx1050 1g
首先是GPUZ的信息,可以看到显卡被插件模拟成了特斯拉P40显卡,显存为1G,CUDA单元为640.支持CUDA,DX OPENCL
接下来是喜闻乐见的娱乐大师跑分,场景21帧左右,显卡总分13w。物理gtx1050的鲁大师跑分在14.8w,性能有所损失,可能是显存容量变小的原因。这个跑分玩一些小游戏因为是没什么问题的了,不过vgpu不支持从显卡直接输出图像。所以得借助一些串流工具才能实现“青春版”的云游戏体验。
接下来是视频编解码的测试,估计这个也是大家最关心的内容。直接说结论吧!编码解码器都没有问题可以正常工作,毕竟Parsec是编码成HEVC后串流给客户机的。通过任务管理器可以看到Parsec已经调用了显卡的编码器,显卡的编码器也有负载。通过DXVA也可以看到VGPU支持的编解码器和GTX1050一样。但是potplayer能识别的显卡,但是播放HEVC 10bit 4k视频特别卡,而物理gtx1050就能流畅播放。jellyfin可以识别到显卡解码器,但是无法硬解,而物理gtx1050可以流畅解码。目前正在寻找解决的办法。
第二个系统ubuntu也直通了vgpu,并可以识别到vgpu。不过ubuntu安装nvidia驱动特别麻烦,首先要关闭UEFI安全启动。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~











逍遥风雨10
校验提示文案
livesng
请问办法找到了吗?
校验提示文案
我就看看x也许买
校验提示文案
间谍王师傅
校验提示文案
大熊本熊
校验提示文案
多出爆文早恰饭
校验提示文案
多出爆文早恰饭
校验提示文案
间谍王师傅
校验提示文案
我就看看x也许买
校验提示文案
livesng
请问办法找到了吗?
校验提示文案
大熊本熊
校验提示文案
逍遥风雨10
校验提示文案