Avanços nos Protocolos de Transporte para Cargas de Trabalho de IA
Um novo protocolo melhora a eficiência da comunicação em tarefas de IA e ML.
― 8 min ler
Índice
- A Necessidade de Comunicação Eficiente
- O Problema com as Tecnologias de Transporte Atuais
- Desafios com RoCEv2
- Uma Nova Abordagem: Transporte Multipath Confiável
- Principais Características do Novo Protocolo
- Simulações e Resultados
- Contexto e Motivação
- O Papel das Coletivas
- Desafios das Cargas de Trabalho de IA/AM sobre RoCEv2
- Transporte Offloaded por Hardware
- Benefícios da Offloading de Hardware
- Conclusão
- Fonte original
- Ligações de referência
À medida que a inteligência artificial (IA) e o aprendizado de máquina (AM) se tornam mais importantes, eles apresentam novos desafios sobre como os computadores se comunicam entre si. Essas tarefas geralmente exigem muitos computadores e unidades de processamento gráfico (GPUs) trabalhando juntos. Este artigo discute uma nova maneira de transportar informações entre esses computadores que visa melhorar a eficácia das tarefas de IA e AM.
A Necessidade de Comunicação Eficiente
Em uma tarefa típica de IA/AM, centenas ou milhares de GPUs precisam trabalhar em conjunto. Essas GPUs estão localizadas em diferentes partes de um data center e precisam enviar e receber grandes quantidades de dados rapidamente. A eficácia de todo o processo de IA/AM depende muito de quão bem essas GPUs conseguem se comunicar. Os métodos tradicionais têm dificuldades em atender às altas demandas dessas cargas de trabalho.
O Problema com as Tecnologias de Transporte Atuais
A tecnologia mais comum usada hoje para transportar dados em IA/AM é chamada de Infiniband. Embora funcione bem para configurações menores, as organizações estão começando a trocar por tecnologias Ethernet porque podem ser mais baratas e oferecer maior escalabilidade. Uma dessas tecnologias é o RDMA sobre Ethernet Convergente (RoCEv2). RoCEv2 pode fornecer baixa latência e alta taxa de transferência, mas tem várias desvantagens quando usada em grandes clusters de IA/AM.
Desafios com RoCEv2
Utilização do Link: Cargas de trabalho de IA/AM exigem alta utilização dos links de rede-cerca de 70%-80%. No entanto, redes de nuvem típicas geralmente utilizam apenas 30%-50%. RoCEv2 frequentemente luta para distribuir o tráfego de maneira equilibrada entre vários caminhos, o que pode levar a alguns links estarem congestionados enquanto outros estão vazios.
Resiliência a Erros: À medida que os clusters de IA/AM crescem, a capacidade de se recuperar de erros se torna cada vez mais importante. Ao usar vários caminhos, pode ser complicado determinar se um pacote atrasado está perdido ou simplesmente está demorando mais para chegar. RoCEv2 depende de uma abordagem Ethernet sem perda que não funciona bem em redes maiores.
Controle de Congestionamento: Clusters de IA/AM frequentemente têm muitos caminhos paralelos, o que significa que o controle de congestionamento precisa se adaptar rapidamente a mudanças no tráfego. No entanto, o método padrão de controle de congestionamento usado pelo RoCEv2 tende a reagir mal nesses ambientes, resultando em desequilíbrios na distribuição do tráfego.
Requisito de Baixa Latência: As cargas de trabalho de IA/AM exigem baixa latência, ou seja, o tempo para enviar e receber informações deve ser o mais curto possível. Para atender a esse requisito, os protocolos de transporte devem ser eficientes em gerenciar o congestionamento e entregar pacotes.
Uma Nova Abordagem: Transporte Multipath Confiável
Para enfrentar esses desafios, um novo protocolo de transporte confiável foi desenvolvido especificamente para cargas de trabalho de IA/AM. Este protocolo utiliza várias técnicas inovadoras para otimizar a comunicação entre GPUs em clusters.
Principais Características do Novo Protocolo
Distribuição de Pacotes: Este protocolo se adapta direcionando pacotes por vários caminhos sem precisar manter dados extensivos para cada caminho. Isso minimiza a quantidade de memória usada e permite um uso eficiente dos recursos da rede.
Controle de Congestionamento Baseado em Janela: Em vez de reduzir imediatamente a taxa de envio de pacotes quando o congestionamento é detectado, o protocolo primeiro olha para o estado dos diferentes caminhos. Isso permite que o tráfego mude para caminhos menos congestionados antes de restringir o fluxo de dados.
Retransmissão Seletiva: Em uma rede onde a perda de pacotes é comum, retransmitir seletivamente apenas os pacotes perdidos ajuda a reduzir o tráfego de dados desnecessário e acelera os tempos de recuperação.
Uso de Marcação ECN: O protocolo utiliza Notificação de Congestionamento de Egress (ECN) para sinalizar congestionamento. Quando um switch detecta congestionamento, ele marca os pacotes. O novo protocolo usa essa marcação para escolher adaptativamente caminhos que não estejam congestionados.
Balanceamento de Carga Adaptativo: Este protocolo ajusta como os pacotes são distribuídos com base nas condições atuais da rede. Se um caminho se tornasse congestionado, o protocolo pode rapidamente redirecionar o tráfego para outros caminhos disponíveis.
Simulações e Resultados
Foram realizadas simulações extensivas para comparar o novo protocolo com o RoCEv2. Várias cargas de trabalho foram testadas para entender como a nova abordagem se saiu sob diferentes condições.
Cargas de Trabalho Sintéticas: Em testes controlados, o novo protocolo de transporte superou significativamente o RoCEv2 em termos de tempo de conclusão do fluxo. Essa métrica reflete quão rapidamente toda a mensagem é enviada e reconhecida.
Cargas de Trabalho Coletivas: Em cenários reais de IA/AM, o novo protocolo mostrou melhorias marcadas nos tempos de conclusão ao executar operações coletivas, que envolvem múltiplas GPUs se comunicando simultaneamente.
Robustez: O novo protocolo também demonstrou maior resiliência quando enfrentou problemas de rede, como falhas de link. Mesmo quando partes da rede estavam fora do ar, o novo transporte ainda mantinha altos níveis de desempenho.
Contexto e Motivação
Em sistemas distribuídos para IA/AM, a comunicação coletiva desempenha um papel crucial. Seja para treinar modelos ou processar dados, é essencial que as GPUs possam trabalhar em sincronia. Coletivas ajudam a otimizar como os recursos são usados e reduzem atrasos de comunicação.
O Papel das Coletivas
Os algoritmos usados em coletivas são projetados para minimizar os efeitos de incasts, onde muitos computadores tentam enviar dados para um computador ao mesmo tempo. Os algoritmos coletivos atuais, como Ring AllReduce e Halving Doubling, dependem de padrões específicos de tráfego para evitar congestionamento.
No entanto, problemas surgem quando a rede não consegue equilibrar sua carga de forma eficaz. É nesse ponto que o novo protocolo se destaca, proporcionando melhor utilização da rede e redução de atrasos para tarefas coletivas.
Desafios das Cargas de Trabalho de IA/AM sobre RoCEv2
Os desafios nas cargas de trabalho de IA/AM geralmente surgem de vários fatores que impactam o desempenho. Com RoCEv2, existem limitações que precisam ser superadas para melhor atender às necessidades das tarefas de IA/AM.
Necessidade de Alta Taxa de Transferência: As tarefas de IA/AM exigem alta taxa de transferência para um processamento de dados eficiente. O RoCEv2 frequentemente fica aquém, especialmente quando as redes se tornam congestionadas.
Impacto das Oscilações na Rede: Variações nos tempos de chegada dos dados podem interromper o fluxo das operações. O novo protocolo é mais adequado para lidar com essas inconsistências.
Evitando a Perda de Pacotes: Em um ambiente de nuvem típico, a perda de pacotes pode afetar severamente o desempenho. A necessidade de um mecanismo confiável para garantir que os dados sejam entregues sem perdas é crucial para manter a velocidade e a eficiência.
Transporte Offloaded por Hardware
Uma das vantagens do novo protocolo é sua capacidade de transferir grande parte da pilha de rede para o hardware. Isso significa que os dados podem ser transferidos diretamente para dentro e fora dos buffers de aplicação, minimizando os atrasos causados pela CPU.
Benefícios da Offloading de Hardware
Transferência de Dados Mais Rápida: Ao contornar o processamento da CPU, os dados podem ser movidos mais rapidamente, o que é vital para aplicações em tempo real.
Menor Uso de Memória: Essa abordagem ajuda a reduzir a quantidade de memória necessária para gerenciar conexões de rede, facilitando a escalabilidade.
Entrega Confiável Fora de Ordem: O novo protocolo permite a entrega fora de ordem de pacotes sem a necessidade de mecanismos complicados de reordenação.
Conclusão
À medida que a IA e o AM continuam a crescer em importância, a necessidade de comunicação eficiente entre dispositivos se torna mais urgente. O desenvolvimento de um novo protocolo de transporte multipath confiável oferece uma solução promissora para os desafios enfrentados nas tecnologias de rede atuais.
Focando em balanceamento de carga adaptativo, controle de congestionamento e entrega eficiente de pacotes, esse novo protocolo está bem equipado para gerenciar as demandas das cargas de trabalho de IA/AM. Os resultados das simulações indicam melhorias significativas de desempenho, tornando-o uma ferramenta valiosa no campo da computação distribuída.
Título: STrack: A Reliable Multipath Transport for AI/ML Clusters
Resumo: Emerging artificial intelligence (AI) and machine learning (ML) workloads present new challenges of managing the collective communication used in distributed training across hundreds or even thousands of GPUs. This paper presents STrack, a novel hardware-offloaded reliable transport protocol aimed at improving the performance of AI /ML workloads by rethinking key aspects of the transport layer. STrack optimizes congestion control and load balancing in tandem: it incorporates an adaptive load balancing algorithm leveraging ECN, while adopts RTT as multi-bit congestion indicators for precise congestion window adjustment. Additionally, STrack facilitates out-of-order delivery, selective retransmission, and swift loss recovery in hardware for multipath environment. The extensive simulation comparing STrack and RoCEv2 demonstrates that STrack outperforms RoCEv2 by up to 6X with synthetic workloads and by 27.4% with collective workloads, even with the optimized RoCEv2 system setup.
Autores: Yanfang Le, Rong Pan, Peter Newman, Jeremias Blendin, Abdul Kabbani, Vipin Jain, Raghava Sivaramu, Francis Matus
Última atualização: 2024-07-23 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2407.15266
Fonte PDF: https://arxiv.org/pdf/2407.15266
Licença: https://creativecommons.org/licenses/by/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.