分享

vGPU学习整理NVIDIA 虚拟GPU (vGPU) 通过底层管理软件将物理GPU按需切割,同时分配给多个虚拟机使用

 看见就非常 2020-07-08
一、概念解释
1、什么是NVIDIA vGPU
NVIDIA vGPU软件是一个图形虚拟化平台,可以让虚拟机(VM)使用NVIDIA GPU的技术。NVIDIA VGPU软件可以以多种方式使用。

NVIDIA  vGPU支持多个虚拟机(VM)能够同时访问部署在宿主机系统上的NVIDIA单个物理GPU。通过这样做,NVIDIAvGPU为VM提供了无与伦比的图形性能和应用程序兼容性,以及通过在多个工作负载之间共享GPU带来的成本效益和可扩展性。

2、 vGPU基本构架
下图展示NVIDIA vGPU 的构架。在NVIDIA vGPU manager的控制下,NIVDIA 物理GPU 支持多个vGPU,vGPU可以直接分配给虚拟机。
每个vGPU 都类似于物理GPU,有固定的显存大小,一个或者更多的虚拟显示输出。vGPU的显存在创建时就从物理GPU中分配出来,并且是独占的。
3、 支持情况
什么物理GPU支持vGPU?能够跟linux kvm兼容的vGPU版本是5.0到5.2目前有七种型号能够兼容
tesla M60
tesla M10
tesla M6
tesla p100
tesla p100(12GB)
tesla P40
tesla P4
每一种物理GPU支持的vGPU类型都不一样。vGPU有几种后缀:
·  Q系列虚拟GPU类型针对设计师和高级用户。(vDWS,虚拟工作站)
·  B系列虚拟GPU类型针对高级用户。(vPC,虚拟pc)
·  A系列虚拟GPU类型针对虚拟应用程序用户。(vAPP,虚拟应用,有点类似于远程应用)
A系列NVIDIAvGPU支持低分辨率的单个显示器,因为它们旨在支持远程应用程序环境,如RDSH和XenApp。在这些环境中,虚拟应用程序通常呈现在屏幕外的缓冲区中。因此,A系列NVIDIA vGPU的最大分辨率与显示器的最大分辨率无关。
有几点是要注意的:
1、NVIDIAvGPU是所有支持的GPU主板上的许可产品。需要软件许可才能启用来宾虚拟机中的所有vGPU功能。所需许可证的类型取决于vGPU类型。
2、NIVDIA  vGPU是需要授权的,根据不同的应用场景(vDWS、vPC、vAPP)来按数量授权。
3、一颗物理GPU核心只能划分为一种vGPU模式,多GPU的卡可以支持多种模式,例如M60有两颗GPU芯片,可支持两种模式,如下图所示:

注意要点:
虚拟机兼容性
Windows支持所有类型的vGPU
Linux只支持q系列vGPU
M6 M10 M60的8q系列vGPU以及P4 P6 P40P100的q系列才支持cuda以及 Unified Memory的OpenCL(估计就是性能和兼容性好些)。


二、桌面云3D场景
从5.3.3版本开始,桌面云支持vGPU显卡虚拟化功能,vGPU主要是将单颗核心切分成多个vGPU提供给不同虚拟机使用,但这里切分的实际是显卡核心的显存,显卡核心的计算能力是共享的,因此,vGPU显卡性能主要以分配的显存及显卡类型进行划分,即虚拟机所分配的虚拟显卡型号。
1、 虚拟显卡型号含义

在为虚拟机分配显卡时,需要选择显卡型号,如下下图所示:

显卡型号各部分代表含义如下图所示:
1) M10:指该虚拟显卡对应的物理显卡型号;
2) 2:指该虚拟显卡可使用显存上限为2GB,该值可为1、2、4、8;
3) Q:指该虚拟显卡的显卡类型,显卡类型可为B、Q;
说明:Q系列相比B系列支持更高的显存,更大的分辨率及帧率,同时设计软件兼
容性相比B系列增加了售后保障。
2、虚拟显卡性能评估
   在vGPU场景下,显卡核心的计算能力是共享的,因此,vGPU显卡性能主要以分配的显存及显卡类型进行衡量。因此,可通过素材大小及特定3D软件两个维度进行虚拟显卡型号最佳推荐,具体内容可参考市场选型指导材料。
3、 vGPU系统兼容性
Ø Windows系统兼容性
系统名称
备注
Windows7(64bit)
vGPU场景下,推荐使用企业版
Windows10(64bit)
vGPU场景下,推荐使用64位系统
4、vGPU场景终端要求
vGPU场景最低要求为STD-200,单屏无损可使用STD-500,双屏无损需使用STD-600,2K以上需使用支持该分辨率的物理PC终端。
5、 IOPS计算方式
Ø 计算前需获取数据
1. 并发用户数
2. 每虚拟机用户IOPS需求
每虚拟机用户IOPS需求如下表如客户资源充足请均按重载场景计算,以保障后续体验性;
场景
所需IOPS
VGPU设计场景轻载
40
VGPU设计场景中载
60
VGPU设计场景重载
100
Ø 计算公式
存储需满足最低IOPS=用户并发数*每虚拟机用户IOPS需求
三. 项目中注意事项
3.1 桌面右键没有 NVIDIA 控制面板

第一步:确认当前显卡驱动是最新版本,确认方法。
在计算机管理-设备管理器-显示适配器,找到对应显卡,右键属性,在驱动程序里面可以看到驱动程序日期和驱动程序版本。

第二步:在Windows 系统服务中重启服务 NVIDIA Display Container LS

一般重启nv 服务后,桌面右键菜单恢复正常。

3.2、NVIDIA 控制面板里存在丢失界面

解决思路同第一个问题进行排查。
3.3 取消授权弹窗

包括vGPU 授权成功、授权失败、正在获取授权等提示。
解决思路:
手动在注册表中添加注册表项DisableExpirationPopups 并设置为 1
注册表路径:HKEY_LOCAL_MACHINE\SOFTWARE\NVIDIA
Corporation\Global\GridLicensing
DisableExpirationPopups 这个注册表项默认不存在,而且默认会弹提示框。
其值为1 代表不弹提示框;其值为 0 代表要弹提示框。
3.4、授权无法获取
解决方法:
第一步:检查NVIDIA 控制面板中配置的授权服务器地址,确认虚拟机能 ping 通该服务器 IP。
第二步:检查客户端虚拟机的系统时间,并对比授权服务器的系统时间
保证2 个系统时间一致;
第三步:如果修改了客户端的系统时间,需重启NVIDIA Display Container LS 服务,如果修改了授权服务器的时间,建议重启授权服务器
第四步:检查授权服务器当前剩余可用授权数,确认还有剩余授权数,且还在有效期内。


查看方法:授权管理平台地址:http://授权服务器IP:8080/licserver
第五步:如果排除以上情况,仍然获取不到授权,请手动删除客户端虚拟机在如下目录的所有文件(包括隐藏文件)并重启NVIDIA Display Container LS 服
务。 打开路径: C:\Program Files\NVIDIA Corporation\Grid Licensing\


第六步:如果以上确认都OK,但仍然获取不到授权,联系专家、研发处理。
四、 常识问题整理
【1】3D虚拟机台数和显卡状态上显示的数量不一致问题。
【说明】:此问题可尝试后台手动修复。
Shell登录VMP后台,在确保所在集群服务器没有虚拟机操作后,在每台节点主机上均执行perl /sf/debug/vgpu_load_rebuild.pl 进行恢复。
【2】还原模式虚拟机更换显卡后,开机提示硬件更新需重启
还原模式下的虚拟机,更改显卡后,Windows系统启动后能检查到硬件的变动,会提示硬件更新,重启生效。此时不要点击重启,直接点击稍后重启。
【3】授权占用/释放机制
已获得NVIDIA授权的虚拟机,在关机后会自动释放授权,若是异常关机,则30分钟后授权服务器会释放对应授权,虚拟机与授权服务器间网络中断,则虚拟机上授权保留24小时,3D虚拟机显卡禁用或者删除后开机,显卡驱动不会工作,亦不会占用授权。
【4】vgpu的方案支持第三方服务器吗?
支持,但要求服务器满足NIVDIA硬件认证。
【5】一个核心上,1B和1Q可以同时运行么?
不可以,一个显卡核心只支持承载一种类型的vgpu。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多