Dell T5820 GPU异常排查

由于我想要能够7x24在家中使用服务器,考虑到 HPE ProLiant DL380 Gen9服务器 涡轮风扇的噪音,我尝试选购静音工作站来运行 Machine Learning 硬件( NVIDIA Tesla A2 GPU运算卡AMD Radeon Instinct MI50 )。虽然最初选择 HP Z8 G4工作站 ,但由于二手硬件异常以及高昂的总体成本,我退而求其次选择了 Dell T5820。

然而,这个选择带来了无尽的折腾,使我意识到桌面工作站实际上比机架服务器限制更多,特别是高端GPU运算卡的兼容性不佳。以下是我的折腾记录:

从技术规格来看,T5820似乎扩展性还行:

  • 具备两条PCIe3 x16插槽,从技术参数以及手册来看,至少应该能支持2块全功能GPU卡

  • 可选950W电源,满足了支持2块高功率GPU的基本条件(按 AMD Radeon Instinct MI50 全功率是300W,双卡TDP是600W,有一定余量且可以通过设置限制GPU功率)

  • 总共有5根PCIe x16 物理插槽 ,虽然其实部分插槽的连线是x8 甚至是残废的 x1,但好歹也能再安装两块 NVIDIA Tesla A2 GPU运算卡

当我好不容易买齐了10-pin转双8-pin电源线,5针转4针风扇电源线(Dell主机使用5pin风扇线),甚至为了能够同时驱动多个GPU风扇,我还购买了一个SATA电源转10个4pin风扇转接器。然而,当我插入 AMD Radeon Instinct MI50 ,开启电源,却发现主机毫无反应,只有风扇在转,电源灯白色(即无故障),却没有任何显示输出。

同样,替换成 NVIDIA Tesla A2 GPU运算卡 (能够排除外接电源的问题),也是同样的没有任何视频输出,无法启动

备注

Dell工作站有一个苛刻的要求,是必须插一块显卡才能启动,这对于我这样的远程服务器使用来说非常鸡肋,白白浪费了一个PCIe插槽。

排查

我购买的二手Precision 5820 Tower,淘宝卖家已经将BIOS升级到最新的2.48.0,这个版本是Dell在2025年12月发布的最新版本,也就是说为了支持 Xeon W-22xx 系列处理器,这台主机的BIOS已经升级到最新版本,也侧面说明了不可能再通过升级BIOS来尝试解决不支持 AMD Radeon Instinct MI50NVIDIA Tesla A2 GPU运算卡

根据我之前安装部署 Nvidia Tesla P10 GPU运算卡 , NVIDIA Tesla A2 GPU运算卡AMD Radeon Instinct MI50 的经验(这些GPU计算卡都已经在 HPE ProLiant DL380 Gen9服务器 上使用验证过),我确认或排查了以下步骤:

  • Above 4G Decoding BIOS设置 确定已经开启(默认配置),这个配置是大规格显存的GPU必须开启的支持

  • 我在选购T5820时已经配备了950W电源,并且在安装 AMD Radeon Instinct MI50 时使用了主机原装的两根8pin电源线,所以不太可能是电源功率不足导致GPU异常

  • 虽然gemini提示我可能有内存与显存的"地址冲突",也就是大规格内存可能会占用CPU寻址的物理地址,可能压缩PCIe设备的MMIO空间

    • 我尝试拔掉一半内存,甚至只保留一根32GB内存,但是情况没有任何变化

    • 参考MI50的管官方SPEC,我发现实际上官方兼容列表中高端GPU实际上最高有48GB显存,者表明主机应该是支持大容量显存的

  • BIOS 里禁用 CSM (Legacy Support),强制使用纯 UEFI 模式: 实际上我从一开始就特意设置了纯UEFI环境(以便为后续 IOMMU 虚拟化做准备)

  • 也有可能是PCIe需要满血的x16插槽: 我实际测试了slot2和slot4这两个满血slot,都没有解决

  • 甚至尝试了将PCIe降级为 gen2 ,实践没有解决

  • Advanced configurations 有一个可疑的 ASPM(Active State Power Management) Level ,这个ASPM(主动状态电源管理)是允许 PCIe 设备在空闲时进入低功耗状态,为避免L0,L1功耗切换影响,我尝试disable这个功能,没有解决

  • 关闭 Secure Boot 没有解决

推测

由于各种可能排除,我发现不仅 AMD Radeon Instinct MI50 无法工作,而且 NVIDIA Tesla A2 GPU运算卡 也同样安装以后无法启动主机。这就奇怪了 NVIDIA Tesla A2 GPU运算卡 只有 16GB 显存,已经是常见的桌面级显卡的显存规格了。

我注意到Google提到部分数据中心P100,M40都有人报告无法启动,但是我又验证我的 Nvidia Tesla P4 GPU运算卡 (8GB显存)可以使用。

太让人沮丧了,我的最好的GPU都无法工作?

我忽然想到,是不是T5820会拒绝所有的数据中心GPU?

因为我测试的都是数据中心的无显示输出的计算卡,T5820工作站的官方SPEC列出的显卡全部是桌面级系列,我怀疑是BIOS做了什么限制。

所以我尝试:

可能的原因

我在 The Dell Precision 5820 does not have NVIDIA Tesla support (See pinned post for caveat) 的评论中找到一个线索:

T5820 不支持 reBAR ,对于数据中心Tesla计算卡,需要大容量BAR(例如16GB或32GB),以便CPU能够直接访问其全部显存。这需要主板支持 Resialbe BAR(reBAR)Above 4G Decoding BIOS设置

NVIDIA的数据中心计算卡通过 nvflash64.exe --gpumode graphics 可以修订成图形模式,在这种模式下就能想传统显卡那样使用256MB的"small bar",这样几乎所有主版的BIOS都能够在4GB以下的低端内存空间分配出256MB,从而扰过BIOS的资源分配检查。

不过AMD的计算卡没有这个修改gpumode的方法,可能通过 AMD Radeon Instinct MI50 刷VBIOS 改成 Radeon Pro VII 改成Pro VII固件,然后执行 lspci -vvv 查看 Region 大小,如果是256M,则在T5820上使用的概率就很大。

如果刷入固件之后使用small bar,但依然无法在T5820上使用,则可能是T5820使用了 Class Code 或 SSID 的身份来判断

  • 修订VBIOS的BAR size (Red BIOS Editor (RBE) 修改)

  • 修订VBIOS的SSID,例如修改 081E (Radeon Pro VII)

在验证我的想法之前,我先测试 nvflash 调整Tesla计算卡模式(没有成功, NVIDIA Tesla A2 GPU运算卡 不支持切换graphics模式),然后尝试 修订AMD MI50 VBIOS的BAR size

参考