// 技术说明 · GB10 热行为分析
NVIDIA DGX Spark 使用 GB10 超级芯片 —— Blackwell 架构,计算能力 sm_121(在部分早期 CUDA 工具链中显示为 sm_90)。在持续推理或训练工作负载下, GB10 会长时间稳定在 80 摄氏度出头。这不是硬件故障,而是设计选择。 常规 NVIDIA GPU 上可用的散热杠杆,在这颗芯片上并未暴露。
功率上限和风扇控制在 nvidia-smi 中都返回 [N/A]:
$ nvidia-smi --query-gpu=power.limit,power.max_limit,power.min_limit,fan.speed --format=csv,noheader [N/A], [N/A], [N/A], [N/A]
这些接口并未被"隐藏"或需要 sudo 才能访问 —— 它们在 GB10 驱动接口上根本 未实现。固件根据温度和工作负载状态在内部管理这两个维度。用户空间的任何 配置都无法改变它们。
--lock-gpu-clocks唯一响应的杠杆是图形时钟上限。即使
nvidia-smi --query-supported-clocks=graphics 在 GB10 上返回
[N/A],驱动仍然通过 --lock-gpu-clocks 接受硅片
工作范围内的任意整数 MHz 值:
$ sudo nvidia-smi -lgc 1500,2000 -i 0 GPU clocks set to "(gpuClkMin 1500, gpuClkMax 2000)" for GPU 0000000F:01:00.0 All done.
我们生产硬件上的参考上限约为 3003 MHz,最小接受值约为 900 MHz,中间步长
均被接受。-rgc 重置为出厂设置。两条命令均立即生效。
由于只有固件决定何时降频,且它做得比较保守(避免 SW-slowdown,而非追踪任意 温度目标),一台 DGX Spark 在 90+% 使用率下服务 Ollama 时,会稳定在 80 摄氏度 出头并长期维持。用户无法要求固件更激进地降频。剩下的唯一执行器就是图形时钟 上限。
我们构建了一个小型守护进程,每 30 秒采样 GPU 温度,并使用三段迟滞控制将时钟
上限以 150 MHz 步长调整:进入警告带时 降频,处于目标带时 保持,
连续三次冷采样后 升频。在我们的生产 GB10 节点(spark-23)上,
在同样 94% 使用率下持续温度下降了 11 摄氏度。完整机制及许可条款见产品页:
thermal.zctechnologies.org。实时遥测:
/live-telemetry.html。
关于 -lgc 在 GB10 上实际行为的参考:
/nvidia-smi-lgc-on-gb10.html。
由 C.R. Burrell LLC 发布。写给在生产环境运行 DGX Spark 的工程师。欢迎指正: [email protected]。