我们在NVIDIA vGPU 11.0的新功能介绍里提到了两个非常重要的功能:
1. vGPU虚拟机驱动跨版本的兼容
2. License功能限制的改变
接下来我们在实际的环境里对这两个功能进行一些简单的验证,方便大家更深入的理解。
首先简单介绍下我这次测试的软件环境信息:
1.服务器虚拟化平台Citrix Hypervisor 8.1
2.NVIDIA vGPU 10.1 (稍后会针对这个版本进行升级到11.0)
3.Windows 7 虚拟机(NVIDIA 宣布在vGPU 11.0版本停止对Win7 虚拟机操作系统的支持,但是实测可以正常安装和运行。但是不建议生产环境使用官方不支持的操作系统版本)
本文开头提到的两个功能验证,我们需要先升级Host的vGPU的版本到11.0,详细的升级步骤如下:
# rpm -qa | grep NVIDIA --- 查看当前已安装的vGPU软件包名称
NVIDIA-vGPU-xenserver-8.1-440.53.x86_64
# rpm -e NVIDIA-vGPU-xenserver-8.1-440.53.x86_64 --- 卸载此软件包
# rpm -ivh NVIDIA-vGPU-xenserver-8.1-450.55.x86_64.rpm ---安装新的vGPU 11.0的Host软件
Preparing... ################################# [100%]
Updating / installing...
1:NVIDIA-vGPU-xenserver-1:8.1-450.5#################################[100%]
# reboot ---重启服务器后nvidia-smi命令确认驱动安装成功
我们看到nvidia-smi可以正常输出,说明vGPU 11.0(450.55)的Host驱动成功安装。
在升级完Host的驱动以后,此时我们虚拟机内的vGPU驱动还是处于10.1(442.06)版本。由于vGPU 11.0已经支持了vGPU虚拟机驱动的跨版本支持,所以此时10.1的vGPU驱动可以正常的工作在vGPU 11.0的Host驱动上。如下图所示:
为了进一步确保10.1的驱动正常运行,我们使用FurMark这款图形跑分软件来进行测试,此时我们发现FurMark可以正常运行,且可以到达平均58fps的OpenGL渲染能力。
至此我们完成了vGPU虚拟机驱动跨版本支持的验证。
当10.1的vGPU无法正常拿到License以后,帧率会直接限制到3FPS左右如下图所示。所以如果我们需要验证新的License功能限制,需要把虚拟机内的vGPU驱动升级到11.0。
更新vGPU的驱动从10.1到11.0(11.0官方宣称不支持win7的系统),但是实际测试过程中可以正常安装和运行。安装过程中会遇到上图的告警信息。
升级完vGPU虚拟机的驱动到11.0以后,我们此时未给vGPU分配License,我们可以看到此时vGPU是在没有限制下工作的。我们可以看到FurMark跑分软件可以达到50多fps的渲染能力。
在20分钟之后,vGPU依然没能获取到License,则会进入受限工作模式下,实时帧率降低到15fps,如下图所示:
vGPU运行超过24小时依然没有获取到License,限制进一步加强,渲染帧率限制在3fps。
我们重新启动vGPU虚拟机,再次恢复到无限制状态,实时帧率58fps:
至此我们完成了整个vGPU License功能限制的验证。总结如下:
vGPU启动后3分钟内,可以在没有License下正常运行
此时License的状态显示为:Unlicensed (Unrestricted)
vGPU在启动20分钟以后依然没有获得License,进入15fps的限制模式
此时License的状态显示为:Unlicensed (Restricted)
vGPU在启动24小时以后依然没有获得License,进入3fps的限制模式
此时License的状态显示为:Unlicensed
重启vGPU虚拟机后计时清零,重新执行上面的License限制策略。