跳过正文

8卡变7卡、93°C还在Throttling:卡没坏,是热到'自我降速'了

·3735 字·8 分钟·
作者
闫工
十年运营商机房 IT 运维,CCIE。做数据中心网络架构、GPU 服务器与裸金属交付,顺手写点自研小工具。

📌 转载说明:本文首发于微信公众号《闫工的算力工具箱》 原文链接:https://mp.weixin.qq.com/s/IILoH2DA-vPhB5jBhVDWfw

【闫工的工具箱 · 第 13 弹|GPU硬件维修】
#

凌晨 1 点,训练任务挂了。

业务方在群里@我:“卡坏了,赶紧换一张。”

先算笔账再动手:一张 A800 十万起步,换卡要走报修、等备件、重新压测,几天起不来;而如果是散热问题,清灰换硅脂几百块、半天搞定。差别这么大,所以别急着换。

我登录节点,nvidia-smi 一看,8 卡只剩 7 卡,消失的是 GPU 3。再查温度:93°C,Perf Reason 那一栏赫然写着 Throttling(芯片在"自我降速保命",就是标题里说的那个状态)。

每年七八月,这是 GPU 集群最常被误判的故障。今天把完整的排查和修复流程写清楚:从确认告警、风道检查、清灰换硅脂到 vBIOS 更新,走完这一套,满载温度能压回 80°C 以内。

— — —

1. GPU 为什么会热到掉卡?
#

GPU 常年高负载(训练、推理、HPC),散热系统会慢慢劣化:

  • 灰尘累积:散热鳍片堵了,风进不去;
  • 硅脂老化:干了、裂了,热量导不出来;
  • 风道受阻:线缆挡住、导风罩装错;
  • 风扇老化:转速掉了,甚至直接停转。

散热能力一下降,核心/显存温度逼近阈值,芯片就开始降频保命,表现就是算力骤降、掉卡、甚至宕机。

记住一个认知:Throttling 不是坏了,是太热了。先查温度,别急着换卡。

2. 多热算"过高"?
#

不同型号上限不同。我把公开资料和运维经验交叉核对后的参考值列出来(以厂商 datasheet 为准):

型号 最高工作温度(参考) 警戒线(建议) 行动线(建议)
A100 SXM ~83°C >78°C >83°C 持续 5 分钟
H100 SXM5 ~90°C >85°C >85°C 持续 5 分钟
L40 / L40S 8589°C >82°C >85°C 持续 5 分钟
RTX A6000 8993°C >85°C >85°C 持续 5 分钟

⚠️ 说明:L40/L40S 不同来源给的是 85°C 或 89°C,RTX A6000 是 89°C 或 93°C,官方 datasheet 因 OEM 定制 vBIOS 有差异。最准的办法是看 nvidia-smi 自己报的阈值

nvidia-smi -q -d TEMPERATURE | grep -i max

内部运维目标:满载 ≤80°C、稳定 ≤80°C,留足余量,别贴着上限跑。

3. 第一步:确认是不是真的"热"
#

登录节点,看温度域详情:

nvidia-smi -q -d TEMPERATURE

重点看四样:

  • GPU Current Temp(核心温度)
  • GPU Memory Temp(显存温度)
  • Fan Speed(风扇转速)
  • 有没有 Throttling 标记

温度逼近上限还带 Throttling,基本可以锁定掉卡元凶就是它。

4. 第二步:查风道和环境(先别拆机)
#

先别急着拆机,八成问题出在环境:

① 风道方向:必须"前进后出"(Front → Rear),检查有无线缆/面板挡风。

② 相邻 GPU 间距:≥10mm,太挤会互相加热。

③ 导风罩:确认 airflow shroud 装对了。

④ 风扇转速:如果转速为 0 或明显偏低,风扇模组可能挂了:

# 看风扇传感器
ipmitool sensor | grep -i fan

⑤ 机房温度:冷通道建议低于 27°C,不然 GPU 散热再努力也白搭。

5. 第三步:清灰 + 换硅脂(停机操作)
#

环境没问题,那就是"积劳成疾",清灰换硅脂。

⚠️ 这是停机操作,流程要严谨。普通卡(A100 PCIe / RTX 系列)和高端卡(H100 SXM / 液冷)完全是两套玩法,下面分开讲。

普通卡(A100 PCIe / 风冷散热)
#

8卡变7卡、93°C还在Throttling:卡没坏,是热到"自我降速"了

图:PCIe 卡正面 PCB 实物——拆下散热器后,中央 die 区还残留着导热硅脂的痕迹,周围是显存与供电电感。PCIe 卡的密度比 SXM 低,拆装风险也小很多,是绝大多数机房能自己上手的卡

  1. 停止业务、断电、拔电源线
  2. 拆下 GPU,防静电手环戴好
  3. 无尘布 + 异丙醇清洁旧硅脂
  4. 压缩空气反吹散热器灰尘
  5. 按原装规格换导热硅脂/导热垫(厚度必须一致!)
  6. 按编号原位回装螺丝
  7. 上电复测

8卡变7卡、93°C还在Throttling:卡没坏,是热到"自我降速"了

图:PCIe 散热鳍片特写——这就是 GPU 上方的风冷散热器内部,鳍片阵负责把热量带走。灰尘就藏在这片密集的铝片之间,压缩空气反吹是性价比最高的清理方式

高端卡(H100 SXM / 液冷冷板)
#

8卡变7卡、93°C还在Throttling:卡没坏,是热到"自我降速"了

图:H100 GPU模组内部——8 卡 SXM5 GPU 整齐排在 NVSwitch 周围,中央是金色散热鳍片。高密度集群就是这种"挤法",温度稍有异常就会被放大成全集群故障

⚠️ 风险极高。H100 TDP 约 700W,热界面材料是相变材料(PCM)+ 导热垫(putty pad),不是普通硅脂。拆机几乎必然作废保修,且存在损坏 die、HBM、PCB 或水冷系统的风险。

如果你是厂商授权人员,以下是一份浓缩要点:

准备工作:

  • 完全断电,防静电手环、接地工作台
  • Torx T10/T15 扭矩螺丝刀(典型扭矩约 0.4±0.05 N·m)
  • 酒精清洁垫、新 PCM 套件、putty pad 套件
  • 务必查阅对应机型服务手册(Lenovo SR780a V3、Dell PowerEdge XE9680 等)

拆卸冷板:

  • 严格按冷板标签上的顺序,先每颗拧松约 720 度,再用扭矩螺丝刀完全松开
  • 用运输支架固定水管,小心抬起冷板模块
  • 用平头工具从角落轻轻撬开,切勿用力过猛或接触 GPU die 周围元件

清洁与更换 TIM:

  • 用酒精清洁垫轻轻清除旧 PCM 和 putty pad
  • 新 PCM:撕掉一侧保护膜,对准冷板标记贴上,按压排出气泡,停留 1-2 分钟再撕另一侧
  • Putty pad(通常 5 个左右,覆盖 VRM):对准标记粘贴,轻压贴合
  • PCM 更换后有热限制磨合期,需执行官方 PCM TIM 熔融程序

重新组装:

  • 严格遵循对角线/指定顺序和扭矩值
  • 通电后运行 nvidia-smi、DCGM、nvsm health 诊断和压力测试

三个致命坑,每个都踩出过教训
#

下面这张是真实的反面教材——die 中央堆了一大坨、四周又没涂满:

8卡变7卡、93°C还在Throttling:卡没坏,是热到"自我降速"了

图:GPU die 上残留的导热硅脂——中央堆得厚、四周没涂到。这种涂法会让局部接触不良,温度压不下来。正确做法是薄薄一层、用刮刀抹平,或用五点法让冷板压下时自然摊开。是不是和你在某些渠道上看到的"涂一大坨更稳"完全反着来?

后果 正确做法
导热垫厚度不对 厚了压不实,薄了压不住,白干 必须与原装厚度一致(H100 的 putty pad 厚度因位置而异,务必记录原厂规格)
压缩空气直吹风扇叶片 会把风扇吹坏 从散热器反方向吹,或固定扇叶后再吹
裸芯片(H100)螺丝单边锁紧 压裂 die,整块卡报废 必须对角线均匀锁,逐颗递增扭矩,不能一次性拧死

6. 第四步:复测压测
#

清完灰换完硅脂,上电压测:

nvidia-smi                      # 确认 8 卡全识别
./gpu_burn 300                  # 满载烤 5 分钟
nvidia-smi -l 5                 # 每 5 秒刷一次温度

合格标准:

  • 满载 70~80°C
  • 风扇转速随温度动态变化
  • 无 Throttling、无掉卡

温度压稳后,建议再跑一遍 NVIDIA 官方的 DCGM 诊断([Data Center GPU Manager],包含 nvsm healthdcgmi diag -r 4 等子命令)或者 fieldiag。这是 NV 自家的"过一遍验机",比手写脚本更全:会从 inventory、connectivity、PCIe、NVLink、显存、性能几条线一起跑过一遍,绿色才算出厂状态。

下面是修前fieldiag (Field Diagnostics)工具跑出来的真实输出——inventory FAILEDconnectivity FAILED,最后 Final Result: FAIL,红线拉到底:

8卡变7卡、93°C还在Throttling:卡没坏,是热到"自我降速"了

图:fieldiag 诊断输出(修前那次)—— inventory 失败说明 GPU 没被正确识别,connectivity 失败说明 PCIe / NVLink 链路有问题,gpustress 看似过了但整体 FAIL 依然不能交付。诊断跑完别只看 gpustress 那行,整体 Final Result 才是验收线

7. 进阶:vBIOS 也要查(仅授权人员)
#

如果清灰换硅脂后还热,可能是 vBIOS 版本太老、风扇曲线不合理:

# 查当前 vBIOS 版本
nvidia-smi -q | grep -i "VBIOS Version"
# 备份现有固件(必须!)
sudo nvflash64 --save backup.rom
# 解除写保护 + 刷写新固件
sudo nvflash64 --protectoff
sudo nvflash64 -6 new_vbios.rom

⚠️ vBIOS 更新是高危操作,必须先用 backup.rom 备份,OEM 机型(Dell/Inspur/Supermicro)用厂商专用工具,别硬刷公版。个人运维请跳过此步骤,直接联系原厂支持。刷错就变砖,没有后悔药。

8. GPU 高温排查决策树
#

为了让你不用把每一步都试一遍,我整理了这个决策树:

第一步:看温度(nvidia-smi -q -d TEMPERATURE)

  • 满载 >85°C → 进入第二步
  • 满载 <80°C → 问题不在温度,查 NCCL/驱动/PCIe

第二步:看风扇转速和 Throttling 标记

  • 风扇满速 + 温度高 → 散热系统失效 → 进入第三步
  • 风扇转速低 + 温度高 → 风扇模组故障 → 换风扇模组
  • 有 Throttling 标记 → 温度越限,进入第三步

第三步:区分核心高温和显存高温

  • 核心高(GPU Current Temp)→ 硅脂/冷板接触问题 → 清灰换硅脂
  • 显存高(Memory Temp)→ 导热垫老化或风道问题 → 换导热垫 + 检查风道

9. 常见问题对照表
#

现象 可能原因 动作
温度高但风扇转速低 风扇模组故障 / 风道受阻 换风扇模组;清风道导风罩
清灰换硅脂后仍高温 导热垫厚度不符 / 热管泄漏 换整套散热模组
掉卡 / Throttling 温度越限触发降频 复核风道、功耗、环境温度
刷固件后异常 刷错/非定制 vBIOS 用 backup.rom 回刷,联系原厂
相邻 GPU 温差大 间距不足 / 缺导风罩 保证 ≥10mm 间距,加装导流罩
清灰换硅脂后温度不降反升 H100 冷板未跑 PCM 磨合期 / 扭矩不对 执行官方 PCM 熔融程序;重装冷板确认扭矩

10. 长期防复发
#

  • 每 12 个月换一次导热材料;
  • 每季度清一次风道;
  • 上 Prometheus + nvidia_gpu_exporter 做温度趋势监控,别等告警才处理;
  • GPU 并排安装时加装风道隔板/导流罩。

— — —

📖 推荐阅读

服务器红灯告警说硬盘坏了,我没换——结果真救活了

凌晨3点的GPU服务器:一次BMC故障排查全记录

GPU全在、驱动正常,训练就是卡死——NVLink悄悄坏了一半

满血的 200G 网卡被降成「残血」:我围着 NCCL 调了一宿,真凶藏在主板背后一根线

相关文章