千呼万唤始出来,期待已久的新一代基于硬件的图形虚拟化显卡相继隆重登场了。作为业界***的显卡厂商AMD、NVIDIA亦推出了自己的虚拟化显卡,其各自的旗舰产品FirePro S7150x2与NVIDIA M60更是受到了市场的热捧。两大厂商也一致表示,其虚拟化显卡可为虚拟机桌面基础设施环境提供理想的工作站级图形性能。果真是这样吗?正好笔者有幸参与了FirePro S7150x2与NVIDIA M60的测试活动,究竟谁优谁劣,谁更适合在那些环境使用,下面小编就为大家一探究竟吧。
一、什么是FirePro S7150x2与NVIDIA M60
FirePro S7150x2与NVIDIA M60分别是AMD、NVIDIA厂商推出的服务器显卡。其专为虚拟化环境而设计,可提供出色的图形性能。该显卡易于设置和管理,可组织物理服务器、设备移到数据中心,并轻松保护数据安全,从而提供简单、安全、高效的解决方案。
(1)参数上,如下图所示:
规格 |
S7150x2 |
M60 |
处理器核心 |
4096 |
4096 |
显存大小 |
16GB GDDR5 |
16GB GDDR5 |
散热 |
被动 |
主动式/被动式 |
功耗 |
265W |
240W/300W(可选225W) |
支持用户数量 |
Up to 32 |
Up to 32 |
API Support |
DirectX11.1,OpenGL4.4, OpenCL2.0 |
DirectX12,OpenGL4.5, OpenCL2.0,CUDA |
User License Cost |
$0 |
$600 |
(2)原理上,如下图所示:
AMD Multiuser GPU工作方式
AMD FirePro S7150x2采用了SR-IOV标准,让实体图形卡FirePro S7150x2在PCIe总线上化身多个虚拟设备。然后硬件通过时分的方式,在32个虚拟环境间进行循环切换,执行运算并向客户机反馈结果。
AMD Multiuser GPU资源共享方法
AMD虚拟化技术将FirePro S7150x2显卡Framebuffer切割成若干单元,每个Framebuffer单元与整个GPU Engines共同组合形成新的虚拟设备,然后直通给虚拟环境执行运算。此时,虚拟环境使用的是真实的物理显卡,只不过Framebuffer小了一些。
AMD Multiuser GPU在虚拟环境中的部署方法
如下图所示,通过直通方式将切割后的物理显卡单元直接指配给虚拟机。
GRID vGPU工作方式
vGPU 管理器将 GPU 划分为独立的 vGPU 实例,这些实例会直接传递至安装在虚拟机上的原生 NVIDIA 驱动程序。当用户登录到自己的虚拟机上并开始工作时,NVIDIA 驱动程序会通过 Hypervisor 将命令发送至 vGPU 引擎,该引擎会对物理 GPU 所要处理的任务进行调度,然后将结果发回至虚拟机。
GRID vGPU 资源共享方法
vGPU 管理器将 GPU 划分为若干独立 vGPU 实例,每个VGPU实例享有固定且专用的Framebuffer,并通过分时机制在其碎片时间中占用整个GPU Engines。
GRID vGPU在虚拟环境中的部署方法
如下图所示:通过VGPU管理器,将划分后的独立VGPU实例指配给虚拟机。
S7150x2与NVIDIA M60对比总结:
类别 型号 |
AMD S7150x2 |
NVIDIA M60 |
说明 |
划分虚拟设备方式 |
硬件方式划分多个虚拟设备 |
完全采用软件方式 |
NVIDIA M60会出现测试阶段性能高于生产,而S7150则在测试阶段与生产阶段性能一模一样。 |
实现虚拟方式代码数量 |
六七十行 |
一千多行 |
代码越多安全性越低 |
License Cost |
$0 |
$600 |
AMD S7150x2性价比高 |
二、实际应用测试
(1)测试工具
本次采用solidworks性能基准测试。其主要通过模拟预装的大型装配体来实现软件在安装计算机上的表现。通过对大型模型打开、移动、旋转、复制以及模型渲染、工程图标注等基本功能进行模拟,来判断计算机对于软件安装是否有压力,也可以通过***的测试结果数据来判断该计算机硬件配置基础是否符合软件要求。预装模型为三千级数量装配体,满足企业大部分大型装配要求,并具备拓展开孔、阵列、标准件的功能,通过测试的计算机在实际中既具备了理论上流畅运行软件的能力。
(2)测试环境:
主机型号 |
DL380 G9 |
DL380 G9 |
虚拟化软件 |
VMWAR Vsphere 6.2/Horizon 7.0 |
VMWAR Vsphere 6.2/Horizon 7.0 |
CPU |
E5-2643v4 |
E5-2643v4 |
内存 |
48GB |
48GB |
存储 |
2*600G SAS(raid0) |
2*600G SAS(raid0) |
显卡 |
AMD S7150x2 |
NVIDIA M60 |
虚拟机 |
CPU:E5-2643v4(1核心) 内存:8GB 显卡:S7150x2微处理单元 测试项目:Solidworks 2016性能基准测试 |
CPU:E5-2643v4(1核心) 内存:8GB 显卡:M60 VGPU 测试项目:Solidworks 2016性能基准测试 |
NVIDIA GRID M60可被VGPU管理器划分为若干不同类型的VGPU实例,本次solidworks性能基准测试分别测试了M60-8Q、M60-4Q、M60-2Q及M60-1Q专为图形设计而划分的实例的性能表现。
Physical GPUS |
GRID Virtual GPU |
Intended Use Case |
Frame Buffer (Mbytes) |
Virtual Display Heads |
Maximum Resolution Per Display Head |
Maximum vGPUS per Board |
2 |
M60-8Q |
Designer |
8192 |
4 |
4096x2160 |
2 |
2 |
M60-4Q |
Designer |
4096 |
4 |
4096x2160 |
4 |
2 |
M60-2Q |
Designer |
2048 |
4 |
4096x2160 |
8 |
2 |
M60-1Q |
Designer |
1024 |
2 |
4096x2160 |
16 |
AMD Multiuser GPU S7150x2虚拟化显卡可被切割成若干不同类型的微处理单元,本次solidworks性能基准测试分别测试了S7150VF(8GB Framebuffer)、S7150VF(4GB Framebuffer)、S7150VF(2GB Framebuffer)及S7150VF(1GB Framebuffer)实例下的图形性能表现。
Physical GPUS |
微单元 |
Intended Use Case |
Frame Buffer (Mbytes) |
Virtual Display Heads |
Maximum Resolution Per Display Head |
Maximum vGPUS per Board |
2 |
S7150VF |
Designer |
8192 |
4 |
4096x2160 |
2 |
2 |
S7150VF |
Designer |
4096 |
4 |
4096x2160 |
4 |
2 |
S7150VF |
Designer |
2048 |
4 |
4096x2160 |
8 |
2 |
S7150VF |
Designer |
1024 |
2 |
4096x2160 |
16 |
⑶测试方法与结果对比
●测试结果衡量标准
通常情况下,测试数值越低越好。不过,只要满足表格内的要求就具备了理论上流畅运行软件的能力。
Solidworks基准测试结果参考表
测试项目 |
测试数值(秒) |
图形 |
30-50 |
处理器 |
30-50 |
输入/输出 |
<80 |
总体 |
<100 |
渲染 |
没固定值,但越小越好 |
RealView性能 |
没固定值,但越小越好 |
模拟 |
80-100 |
●测试方法
由于受条件限制,本次NVIDIA M60和AMD S7150x2虚拟化显卡测试均采用单Physical GPU核心参与solidworks性能基准测试,并做了如下分配:
***、将单核心8GB Framebuffer只分配给一个虚拟机
第二、将单核心8GB Framebuffer均等切割,分配给两个虚拟机并同时做基准测试
第三、将单核心8GB Framebuffe均等切割为四份,分配给四个虚拟机并同时做基准测试
第四、将单核心8GB Framebuffe均等切割为八份,分配给四个虚拟机并同时做基准测试
●测试结果分析
测试结果图表
类别 项目 |
8GB Framebuffer |
4GB Framebuffer |
2GB Framebuffer |
1GB Framebuffer |
||||
M60-8Q |
S7150VF |
M60-4Q |
S7150VF |
M60-2Q |
S7150VF |
M60-1Q |
S7150VF |
|
图形 |
23.6 |
14.0 |
24.3 |
27.5 |
28.1 |
42.8 |
28.8 |
86.3 |
处理器 |
32.7 |
46.3 |
33.2 |
48.6 |
38.9 |
52.4 |
42.7 |
51.7 |
I/O |
19.2 |
27.9 |
19.4 |
28.9 |
20.6 |
32.4 |
28.5 |
38 |
总体 |
75.6 |
88.2 |
77.0 |
104.9 |
87.6 |
127.4 |
99.5 |
181.9 |
渲染 |
79.1 |
119.6 |
79.1 |
122.0 |
81.0 |
126.5 |
97.7 |
123.4 |
RealView |
36.4 |
11.9 |
37.8 |
24.2 |
39.6 |
41.5 |
42.0 |
86.9 |
模拟 |
82.1 |
117.4 |
84.4 |
130.5 |
90.6 |
144.8 |
108.1 |
153.0 |
由于本次测试只考察不同图卡对Solidworks大型转配体性能的影响,因此我们只对测试结果图表中的图形、渲染、RealView、模拟做详细分析。
图形:指对图形的各种操作,如:模型打开、移动、旋转、复制以及工程图标注等
渲染:指图形的真实效果,侧重渲染的结果
RealView:图形的真实效果,侧重渲染过程
模拟:指对实体三维粒子空间效果检查,如:干涉检查、碰撞检查、质量检查等
结果判定:
⑴在图形操作与RealView,S7150x2明显比NVIDIA GRID M60 性能更高。而在渲染与模拟中NVIDIA GRID M60比S7150x2性能要好。
⑵NVIDIA GRID M60通过纯软件的方式划分与切换虚拟设备,而AMD S7150x2则完全采用硬件方式。硬件划分与切换虚拟设备效率高,而软件方式效率低,因此NVIDIA M60会出现测试阶段性能高于生产,而S7150则测试阶段与生产阶段性能一模一样。
⑶AMD虚拟化解决方案无需使用者授权,而NVIDIA Grid VGPU需要单独购买license,以SOLIDWORKS软件为例,如果只做图形与Realview操作,则AMD FirePro S7150x2服务器GPU比NVIDIA M60性价比更高。
⑷NVIDIA M60实现划分与切换虚拟设备的代码为一千多行,而AMD S7150x2代码则六七十行,而代码越多漏洞会越多,因此AMD S7150安全性明显高于NVIDIA M60
以上是小编以达索SOLIDWORKS软件为基础。为各位抛砖引玉,站在中立的角度为大家呈现的当世最***两款图形虚拟化显卡的对比测试,根据应用行业软件不同,虚拟图卡性能表现也会有所不同,后续我们也会继续按照各行业应用为基础,帮助大家更加客观、全面的了解图形虚拟化技术的发展现状和***趋势,希望能对广大读者有所帮助!