A seguirPróximo guia
Paralelismo de modelo e pipeline
Técnico
GUIA Técnico
Uma maneira de dividir a matemática dentro de uma única camada de rede neural em várias GPUs para que um modelo grande demais para um dispositivo ainda possa ser executado.
It matters because frontier models have hundreds of billions of parameters that no single GPU can hold or compute fast enough alone.
O paralelismo de tensor (também chamado de paralelismo de modelo intracamada) fragmenta matrizes de peso individuais em GPUs, em vez de colocar camadas inteiras em dispositivos separados. Em um transformador, as grandes multiplicações de matrizes – projeções de atenção e o MLP feed-forward – são divididas: por exemplo, a primeira matriz de peso do MLP é particionada por colunas e a segunda por linhas, de modo que cada GPU calcula uma fatia e uma única redução total combina os resultados. A atenção é dividida entre as cabeças, com cada GPU lidando com um subconjunto. Como cada GPU faz parte de cada camada simultaneamente, o paralelismo tensor reduz a memória por GPU e acelera a computação, mas exige comunicação frequente e de alta largura de banda entre as GPUs de cada camada. É por isso que geralmente fica confinado em um nó conectado pelo NVLink e combinado com pipeline e paralelismo de dados para trabalhos de treinamento e atendimento muito grandes.
As decisões de arquitetura impulsionam o desempenho e os custos operacionais durante anos.
A educação técnica ajuda as equipes a escolher a pilha certa, não apenas a mais nova.
Melhores escolhas de engenharia reduzem incidentes de confiabilidade na produção.
O paralelismo de tensores permanece fundamental, mas é cada vez mais misturado ao 'paralelismo 3D' (tensor + pipeline + dados) e combinado com paralelismo especializado para modelos de mistura de especialistas. Frameworks como Megatron-LM, DeepSpeed e vLLM automatizam a fragmentação. À medida que as interconexões de GPU (NVLink, NVSwitch) e as malhas ópticas ficam mais rápidas, o limite do limite do nó relaxa, permitindo grupos tensores-paralelos mais amplos. Espere uma paralelização automática mais inteligente que seleciona dimensões de fragmentos e tamanhos de grupos para minimizar a comunicação para uma determinada topologia de cluster.
Treinar um modelo de parâmetro 175B fragmentando as matrizes de peso de cada camada em 8 GPUs em um nó conectado por NVLink usando Megatron-LM.
Servindo um modelo de bate-papo com parâmetros de 70B no vLLM com tensor_parallel_size=4 para que os pesos caibam em quatro GPUs e respondam em tempo real.
Dividir os cabeçotes de atenção do transformador entre GPUs para que cada dispositivo calcule um subconjunto e, em seguida, concatenar as saídas para a próxima camada.
Combinando paralelismo de tensor dentro de nós e paralelismo de pipeline entre nós para treinar modelos de trilhões de parâmetros em grandes clusters de GPU.
A otimização de um benchmark pode ocultar fraquezas mais amplas do sistema.
Os custos de infraestrutura e manutenção são frequentemente subestimados.
As lacunas de segurança e observabilidade podem aumentar à medida que os sistemas se tornam mais complexos.
Defina metas de latência, qualidade e custo antes da implementação.
Benchmark sob condições realistas de carga e dados.
Monitoramento de instrumentos para erros, desvios e impacto no usuário.
Prepare caminhos de reversão e resposta a incidentes antes de escalar.
Free newsletter
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Uma maneira de dividir a matemática dentro de uma única camada de rede neural em várias GPUs para que um modelo grande demais para um dispositivo ainda possa ser executado. Isso é importante porque os modelos de fronteira têm centenas de bilhões de parâmetros que nenhuma GPU pode manter ou calcular com rapidez suficiente sozinha.
O paralelismo tensor (intracamada) fragmenta as matrizes de peso dentro de uma camada, de modo que cada GPU calcula parte da mesma camada – diferente do paralelismo de pipeline, que coloca camadas inteiras em GPUs diferentes.
A divisão da primeira matriz por colunas permite que cada GPU aplique a não linearidade localmente; dividir o segundo por linhas significa que uma única redução total soma as saídas parciais - minimizando a sincronização.
Cada camada aciona a comunicação coletiva (totalmente reduzida), de modo que o tráfego pesado e sensível à latência exige links intra-nós rápidos, como o NVLink, em vez de redes mais lentas entre nós.
Os cabeçotes de atenção são independentes, portanto, são distribuídos pelas GPUs – cada dispositivo computa alguns cabeçotes e as saídas são combinadas.
All-reduce soma as saídas parciais calculadas em cada GPU para que concordem com o resultado da camada; isso acontece várias vezes por camada em passagens para frente e para trás.
Continue aprendendo
Mais guias escolhidos para este tópico
A seguirPróximo guia
Paralelismo de modelo e pipeline
Técnico