Léxico de TI › Hardware › Balanceamento NUMA

Balanceamento NUMA

Hardware Svenska → Atualizado: 2026-09-30

A técnica de colocar uma thread e seus dados perto um do outro em um sistema NUMA (Non-Uniform Memory Access), no qual a CPU acessa a memória "própria" mais rápido do que a memória ligada a outro processador/socket. Um posicionamento errado gera latência à toa.

Contexto: em um servidor com vários sockets de CPU (ou uma CPU em chiplets), a memória é dividida de modo que cada processador tem a "sua" por perto. Ler a memória local é rápido; ler a de outro socket (pela interconexão) é mais lento — é isso que "não uniforme" quer dizer. O balanceamento NUMA garante que a thread rode em um núcleo próximo da memória que ela usa: o sistema operacional pode mover a thread até os dados ou os dados até a thread. Sem ele, uma thread pode ficar buscando o tempo todo pelo link lento → perda de desempenho em cargas que exigem muita memória. Importante em servidores grandes, em ambientes virtualizados e até em CPUs modernas em chiplets (AMD EPYC/Ryzen, onde CCDs diferentes têm distâncias diferentes até a memória). O Linux tem balanceamento NUMA automático. Uma otimização central para desempenho multithread intensivo em memória.

← Voltar ao léxico