// NOTA TÉCNICA · COMPORTAMENTO TÉRMICO GB10

Por que o GB10 do DGX Spark esquenta sob carga sustentada

O NVIDIA DGX Spark usa o superchip GB10 — arquitetura Blackwell, capacidade de computação sm_121 (ou sm_90 em algumas toolchains CUDA anteriores). Sob cargas sustentadas de inferência ou treinamento, o GB10 estabiliza nos 80 °C baixos indefinidamente. A razão não é defeito de hardware — é uma decisão de projeto. As alavancas de refrigeração que uma GPU NVIDIA típica expõe não existem nesse silício.

O que falta

O limite de potência e o controle do ventilador retornam ambos [N/A] do nvidia-smi:

$ 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]

Essas interfaces não estão "ocultas" nem protegidas por sudo — não estão implementadas na interface do driver do GB10. O firmware gerencia ambas as dimensões internamente conforme o estado térmico e de carga. Nenhuma configuração de espaço de usuário muda isso.

O que ainda funciona: --lock-gpu-clocks

A única alavanca que responde é o teto do clock gráfico. Embora nvidia-smi --query-supported-clocks=graphics retorne [N/A] no GB10, o driver ainda aceita valores inteiros arbitrários em MHz dentro da faixa operacional do silício via --lock-gpu-clocks:

$ sudo nvidia-smi -lgc 1500,2000 -i 0
GPU clocks set to "(gpuClkMin 1500, gpuClkMax 2000)" for GPU 0000000F:01:00.0
All done.

O teto de referência no nosso hardware de produção é ~3003 MHz. O mínimo aceito é cerca de 900 MHz. Passos intermediários são respeitados. -rgc restaura para valores de fábrica. Ambos os comandos surtem efeito imediatamente.

Consequência: calor sustentado é o regime padrão

Como apenas o firmware decide quando reduzir o clock, e o faz de forma conservadora (evita SW-slowdown, não persegue meta térmica arbitrária), um DGX Spark servindo Ollama a 90+ % de utilização estabilizará nos 80 °C baixos e permanecerá lá indefinidamente. O usuário não pode pedir ao firmware para ser mais agressivo. O único atuador restante é o teto do clock gráfico.

Nossa abordagem

Construímos um pequeno daemon que amostra a temperatura da GPU a cada 30 s e ajusta o teto do clock em passos de 150 MHz com histerése de três bandas: descer ao entrar na banda de aviso, segurar na banda alvo, subir após três amostras frias consecutivas. No nosso GB10 de produção (spark-23), a temperatura sustentada caiu 11 °C na mesma utilização de 94 %. Mecanismo completo e termos de licença estão na página do produto: thermal.zctechnologies.org. Telemetria ao vivo: /live-telemetry.html. Referência sobre o comportamento real do -lgc no GB10: /nvidia-smi-lgc-on-gb10.html.


Publicado por C.R. Burrell LLC. Escrito para engenheiros que operam DGX Sparks em produção. Correções bem-vindas: [email protected].