一、先分清「掉卡」的三种表现

第一种是少卡:nvidia-smi 里卡数变少,系统还在跑,只是少了一张。第二种是失联:整机 nvidia-smi 无响应、驱动加载失败,通常连 ssh 都卡,需要重启。第三种是报错但仍在:卡还在列表里,但 dmesg 里刷 Xid,训练进程报 CUDA error。三种表现对应的排查路径完全不同,先分清属于哪一种,能省掉一半无效动作。

一个实用习惯:把 dmesg -T 加时间戳输出和 nvidia-smi -q 的完整结果定期落盘。故障发生后机器一旦重启,现场就没了,而这两份日志往往就是定责和修复的唯一线索。

二、按 Xid 码定位方向

Xid 是 NVIDIA 驱动报出的错误码,是最有价值的线索。常见几类:Xid 13/31 属于非法内存访问,多与应用代码越界或显存故障有关;Xid 48 是双位 ECC 错误,说明显存已经不可靠,需要更换;Xid 62 多为内部微控制器或总线问题;Xid 74 与 NVLink 通信相关,多卡训练时常见;Xid 79 则是掉总线,优先查供电、插槽与固件。

Xid 不是判决书而是路标。看到 79 就去查供电和链路,看到 48 就去查显存 ECC 计数,看到 74 就先隔离 NVLink 拓扑做单卡复测。按路标走,比凭经验乱换件快得多。

三、供电与散热是最大嫌疑

GPU 的瞬时功耗远高于标称 TDP:一张 H100 标称 700W,瞬态尖峰可能冲到 900W 以上,8 卡机瞬间就是 7kW 级别的冲击。如果机柜 PDU 单路已经接近上限、或者多台机器共用一路,电压跌落就会让最先扛不住的卡从总线上掉下去。这类故障的典型特征是「整机或多卡同时掉」,而不是单卡。

散热同理。机柜进风温度超过 30℃、或者机器前后风道被线缆堵住,GPU 会先降频再触发保护,日志里表现为掉卡或训练变慢。托管机柜务必留出前后冷热通道,别把 10kW 的机器塞进按 6kW 设计的柜子里。

四、PCIe 链路与主板固件

掉卡前最常见的「前兆」是 PCIe 链路降速:本该 Gen4 x16 的卡,跑着跑着变成 x8 甚至 x4。用 nvidia-smi -q 查看 Link Width 与 Link Gen,或用 lspci -vv 看 LnkSta,一旦发现降速就说明接触或信号完整性出了问题——金手指氧化、riser 卡松动、线缆弯折过度、主板 BIOS 版本老旧都可能。

固件层面要注意配套关系:主板 BIOS、BMC、GPU 固件、驱动、CUDA、内核版本是一套的,单独升级某一项经常引发兼容问题。生产环境升级前先在单机验证,别在训练任务进行中做。

五、托管前的预防清单

把问题挡在上架阶段,比故障后救火便宜得多。清单六项:上架前 72 小时满载压测并留报告;确认机柜功率与 PDU 分路余量不低于 20%;记录每张卡的位置、SN 与 PCIe 链路基线;固定固件与驱动版本并留镜像;配置 Xid 与链路降速告警;备 1-2 张同型号卡和 riser。

如果你的机器已经在托管,把近三个月的 dmesg 日志和机柜温度记录发给我们,我们可以帮你判断是机器侧、机房侧还是应用侧的问题,并给出是否需要换柜或加装监控的建议。

需要针对你的业务做选型建议?把业务形态、并发规模与预算区间告诉我们,2 小时内获取包含多方对比的资源清单与报价区间。热线 0371-65111123。