今天给一个客户做了一个p40显卡的hyper-v虚拟化配置,由于折腾了一下,所以在这里做一下备忘。这篇不是关于hyper-v中windows虚拟机如何做显卡虚拟化的详细教程,如果想看这方面的,可以参考我另一篇博文:hyper-v实战系列:显卡虚拟化(GPU分区)--windows篇详解_hyper-v显卡直通-CSDN博客

系统环境

客户的物理机为windows server 2025标准版,虚拟机为win 10 企业版(21h2),计算卡(显卡)为tesla p40

遇到的问题

很多朋友都喜欢买tesla这类计算卡来跑各种模型,然后通过hyper-v的vgpu技术将显卡虚拟化到不同的windows虚拟机,达到共享显卡性能的目的。

问题一:计算卡用什么驱动才能做vgpu

一般情况下,大家都会直接从nvidia官方下载最新的驱动装上,然后物理机的确能正常给显卡打上驱动。但发现在做虚拟化时,提示找不到可用的显卡分区。这通常是下载错了驱动,对于这些计算卡,desktop类型的驱动是无法做显卡分区的,grid类型的驱动才行。

我们可以从下载的驱动的文件名中得知

(1) 不能做显卡分区的驱动文件(有desktop关键字),例如:

573.76-data-center-tesla-desktop-winserver-2022-2025-dch-international.exe (600多mb)

(2) 可以做显卡分区的驱动文件(有grid关键字),例如:

573.48_grid_win10_win11_server2022_dch_64bit_international.exe (600多mb)

问题二:要用具体哪个版本的驱动

对于这个计算卡(p40),较新版本的驱动是安装失败的,例如:581.15_grid_win10_win11_server2022_dch_64bit_international.exe

旧版本的驱动能成功安装上,例如:

539.41_grid_win10_win11_server2019_server2022_dch_64bit_international.exe

所以如果大家的驱动安装失败,多换几个版本试试即可

问题三:如何判断驱动是否安装正确

如果grid驱动安装正确,可以通过以下执行powershell命令来判断。如果有输出,那么证明驱动正确,且该卡可用于做gpu虚拟化:

Get-VMHostPartitionableGpu

如果上述命令执行后没有任何输出,就是找不到能用的显卡分区了,继续换驱动试!

成功后,按照这里的详细步骤做显卡虚拟化即可:hyper-v实战系列:显卡虚拟化(GPU分区)--windows篇详解_hyper-v显卡直通-CSDN博客

相关截图

下图是物理机版本和显卡相关的信息

下图是成功虚拟化到windows10虚拟机的效果

驱动下载

在nvidia的官网上,我没找到grid相关驱动的下载链接(可能我不太留意),只能从google站下载(得科学上网才行)了:

适用于 NVIDIA RTX 虚拟工作站 (vWS) 的驱动程序  |  Compute Engine  |  Google Cloud

其他问题

        我隐约记得很久之前也给客户做过一些p4或p40计算卡的显卡虚拟化操作,有反馈说这类卡不太稳定的,例如会导致物理机重启或虚拟机窗口时不时断开之类的。这类问题我也不好解决,可以试试换不同版本的驱动,或者将具体的问题留言一下,看看各位有没有解决办法

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐