NVIDIA计算卡魔改&踩坑

发布于 2023-02-09  2,404 次阅读


计算卡是什么

计算卡是服务器产品线的显卡,通常用于科学计算和虚拟化,通常无显示输出接口、被动散热,但由于退役计算卡便宜、大显存,非常适合预算不足又有动手能力的用户用于游戏、渲染、转码、炼丹等。

计算卡的视频编解码支持参考 NVIDIA 官网

系统要求

请在购买计算卡前仔细检查是否满足要求,重点检查UEFI/BIOS是否支持以下功能:

输出显卡

  • NVIDIA:Maxwell 架构以上(支持安装最新的 5xx 版本驱动)
  • 其它厂商:支持 DirectX 11,支持 WDDM 2.0

主板

  • 支持 UEFI 启动,支持关闭 CSM(Compatibility Support Module)
  • 支持 Above 4G Decoding (关闭 CSM 才能开启此功能)
  • 有足够的 PCIE 通道

若将计算卡用于游戏等对 PCIE 带宽消耗较高的场景,请确保:

  • 计算卡和亮机卡均使用高带宽 PCIE 接口,建议不低于 3.0x8 或 4.0x4
  • NUMA 系统应连接计算卡和亮机卡到相同 NUMA 节点
  • 不要使用由南桥或其它拓展芯片提供的 PCIE 接口

转码、炼丹等场景对 PCIE 接口级别没有要求。

操作系统

Windows 11 优先,因为 Windows 11 支持 CASO 改善混合输出的游戏性能且切换显卡更加方便。也可使用 Windows 10 和 Windows Server 2019/2022 。

游戏、渲染等场景不支持 Linux 。

硬件改装

散热

淘宝和闲鱼上有大量成品散热方案,可直接购买也可自行改装。计算卡均为标准1/2 PCIE槽位,改装散热相对简单。

淘宝 风下电机(上海)有限公司 销售一款非标9022离心风扇,供电为 12V 0.25A ,出风口尺寸为 88x22mm ,刚好匹配双槽计算卡进风口。联系该淘宝店客服并说明需要 12V 9022 离心风扇 即可购买。

供电

计算卡供电并非 PCIE 6+2PIN(3+3-2sense) ,而是 CPU 8PIN(4+4-) ,若电源有多余的CPU 8PIN供电则可直接插上使用,若没有则需要购买计算卡专用的双 PCIE 6+2PIN 转 CPU 8PIN 转接线。

基本知识

NVIDIA显卡驱动分为 Game/Studio/RTX Quadro/Datacenter/GRID 等多个类型(麦克斯韦以上架构),不同的驱动类型识别不同的显卡,因此不同型号显卡混装可能导致某些显卡无法识别。然而“识别”实际上是 NVIDIA 的有意限制,实际上只要一个驱动支持某架构显卡,则该驱动就能通过强制安装来支持该架构的其它显卡,且不会破坏数字签名,对游戏反作弊等没有影响。

一般建议使用 Studio 驱动,因为 Studio 驱动识别帕斯卡架构的所有游戏卡和麦克斯韦架构的所有计算卡,大部分游戏卡无需强制安装驱动。 GRID 驱动适合非 NVIDIA 亮机卡用户使用,但只识别帕斯卡架构以上计算卡,安装后计算卡默认为 WDDM 模式,可以少设置一个注册表项。

  • Studio 驱动:在 NVIDIA 官网搜索任意帕斯卡以上架构游戏卡,且下载类型选择 Studio
  • Datacenter 驱动:在 NVIDIA 官网搜索你的计算卡型号
  • GRID 驱动:在 Google 官网下载
  • 核显和非 NVIDIA 驱动请自行下载

NVIDIA 驱动推荐使用 527 或以上版本,此版本优化了混合输出性能并支持 CASO 。

计算卡有 WDDM 和 TCC 两种工作模式(游戏卡只有 WDDM ):

  • WDDM:计算卡支持图形API,可以运行游戏,任务管理器可显示
  • TCC:计算卡不支持图形API,任务管理器不显示
  • 帕斯卡及以上架构计算卡:非 GRID 驱动参照下文修改注册表使用 WDDM , GRID 驱动默认 WDDM
  • 麦克斯韦架构计算卡:使用命令 nvidia-smi -dm 0 -i <ID> 切换 WDDM , ID 可使用命令 nvidia-smi 查看,左侧列表中 GPU 对应的数字即为 ID ,只有一个 NVIDIA 显卡时 -i <ID> 可以省略。

开始操作

Windows 更新可能覆盖驱动,推荐先关闭自动安装驱动程序或断网后操作。

先不要安装计算卡。开机进入 UEFI/BIOS ,关闭 CSM ,开启 Above 4G Decoding 。

关机后安装上计算卡再开机。

非NVIDIA输出

安装非 NVIDIA 驱动。

帕斯卡及以上架构计算卡, Studio Datacenter GRID 驱动均可,麦克斯韦架构计算卡安装 Studio Datacenter 驱动。

NVIDIA输出

若为帕斯卡架构以上游戏卡和麦克斯韦架构以上计算卡,可直接安装 Studio 驱动,无需强制安装。

若你的显卡不符合上述要求或安装完成后有 NVIDIA 显卡不识别,再尝试强制安装。

强制安装驱动

打开驱动安装程序,复制图中的路径:

点击 OK 等待进度条完成。在所有 NVIDIA 显卡安装完成之前不要关闭安装程序,也不要点击其它按钮。

打开设备管理器,对 Microsoft 基本显示适配器警告:必须确认是 NVIDIA 显卡,若存在其它厂商显卡请先安装其它厂商驱动)右键, 更新驱动程序→浏览我的电脑查找驱动程序→让我从计算机上的可用驱动程序列表选取→从磁盘安装→浏览 ,定位到复制的路径,进入 Display.Driver 文件夹,任意选择一个inf文件。

设备列表中可以任意选择型号,建议每个显卡选择不同的型号以便于区分。选择后点击安装,等待安装完成。

安装成功后修改注册表。

修改注册表

打开注册表编辑器,定位到 计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318} ,该项下存在 0000 0001 等子项,依次查看子项下的 DriverDescHardwareInformation.AdapterString 确定计算卡和游戏卡。

  1. 计算卡创建 GridLicensedFeatures DWORD (32位)值 ,数值数据为 7
  2. 计算卡修改 AdapterType DWORD (32位)值 ,数值数据为 1
  3. 计算卡创建 EnableMsHybrid DWORD (32位)值 ,数值数据为 1
  4. 亮机卡创建 EnableMsHybrid DWORD (32位)值 ,数值数据为 2

GRID 驱动和麦克斯韦架构无需步骤 1 , GRID 驱动会自动执行步骤 1 ,麦克斯韦架构请使用上文提到的 nvidia-smi 命令。

Windows 11 在高级图形设置可以指定默认高性能 GPU ,将默认高性能 GPU 设置为计算卡可以实现和步骤 3 和 4 相同的效果。若你是 Windows 11 系统,但高级图形设置没有相关选项,请参照本文修改注册表显示隐藏选项。

不需要在 NVIDIA 控制面板调整高性能图形处理器。 NVIDIA 控制面板中的选项已废弃( 仅对 OpenGL 程序生效),请在高级图形设置调整程序使用的 GPU 。

重启电脑。

  • 打开任务管理器,查看计算卡和亮机卡是否均已显示
  • 打开 Windows 设置→系统→屏幕→显示卡 ,查看高性能是否为计算卡,节能是否为亮机卡

以上三个条件均满足,则计算卡魔改已完成。

踩坑

GPU调度问题

Windows 图形首选项对 NVIDIA 显卡的 OpenGL 无效, OpenGL 程序需要在 NVIDIA 控制面板→管理3D设置→OpenGL 渲染GPU 选择。

非 OpenGL 应用,在 Windows 设置→系统→屏幕→显示卡 中指定 GPU 。

只有 NVIDIA 显卡的方案, OpenGL 应用在 NVIDIA 控制面板→管理3D设置→OpenGL 渲染GPU

存在非 NVIDIA 显卡的方案, OpenGL 应用可能无法指定 GPU ,这是 Windows 本身的缺陷。

帧率限制问题

由于计算卡输出的视频需要经过 PCIE 传输,受限于 PCIE 带宽和操作系统性能,游戏帧率将无法超过某个特定值,且受 CASO 和 HDR 等多种因素的影响。如 PCIE 3.0 x8,1920x1080 时,NVIDIA 527以下驱动只能达到 300-400fps ,而 527 及以上则可达到 700-800fps ,若开启 HDR ,由于 HDR 使用更高颜色深度最高帧率将进一步下降。

CASO 可降低混合输出延迟,因此推荐使用 Windows 11 和 NVIDIA 527 以上驱动(注:其它厂商显卡驱动也必须同时支持 CASO 才能生效。对于 AMD 显卡,至少为 RDNA2 架构)。 CASO 仅在全屏时生效,建议将游戏设置为全屏或全屏窗口化。

驱动崩溃问题

527 及以上驱动某些条件会出现驱动崩溃问题,现象为开机后图形功能无法正常工作,任何使用计算卡的游戏均无法运行, Windows 提示某应用已被阻止使用 GPU ,甚至 TDR 蓝屏。

该问题目前尚无明确的解决办法。经几位 P40 用户测试,发现与 ECC 有关, WDDM 模式若关闭 ECC 则有极高概率出现此问题,因此建议不要关闭 ECC 。