DeepSeek Lança DeepEP para Otimização de MoE

DeepSeek Lança DeepEP para Otimização de MoE

Hoje, logo após o lançamento do FlashMLA, a DeepSeek lançou seu segundo projeto da OpenSourceWeek — DeepEP.

Como a primeira biblioteca de comunicação EP de código aberto projetada especificamente para treinamento e inferência de modelos MoE (Mixture-of-Experts), o DeepEP marca um avanço significativo no campo do Paralelismo de Especialistas (EP). Seu objetivo é fornecer aos modelos MoE capacidades de comunicação de baixa latência, alta largura de banda e alta taxa de transferência, tanto entre GPUs dentro de um nó quanto entre nós.

De acordo com os resultados dos testes, o DeepEP atinge desempenho de largura de banda quase máxima para comunicação multi-GPU intra-nó, enquanto também melhora significativamente a eficiência da comunicação entre nós.

O que é EP?

Antes de nos aprofundarmos no DeepEP, é importante primeiro entender o que é EP.

EP (Expert Parallelism) é um método de computação distribuída projetado especificamente para modelos MoE (Mixture-of-Experts), publicado originalmente pela DeepSeek. MoE é uma arquitetura de modelo baseada em Transformer que emprega uma estratégia de ativação esparsa, tornando-a mais leve durante o treinamento em comparação com modelos densos tradicionais. Em uma rede neural MoE, apenas um subconjunto dos componentes do modelo (chamados de “especialistas”) é ativado para processar a entrada a qualquer momento.

A importância do EP (Expert Parallelism) na aceleração da inferência de modelos de linguagem grandes reside na sua capacidade de particionar eficientemente modelos MoE. Quando um modelo adota a arquitetura MoE com centenas de especialistas (por exemplo, 320 especialistas), o EP pode atribuir diferentes especialistas a nós de computação independentes, com sua granularidade de paralelismo correspondendo diretamente ao número de especialistas.

Em contraste, o TP (Tensor Parallelism) depende da divisão da computação com base no mecanismo de múltiplas cabeças nas camadas de Atenção. Por exemplo, em uma configuração típica de 32 cabeças, o TP enfrenta desafios ao escalar para 64 ou mais GPUs porque a dimensão de divisão é insuficiente (32 < 64), dificultando a utilização total dos recursos de hardware. O EP, por outro lado, particiona as computações ao longo da dimensão dos especialistas.

de EPS-MoE: Expert Pipeline Scheduler for Cost-Efficient MoE Inference

DP VS TP VS PP VS EP

Método Lógica Interna Problema Central Resolvido
Paralelismo de Dados (DP) Replicar modelos entre dispositivos, dividir dados de entrada, sincronizar atualizações de gradiente. Velocidade de treinamento lenta devido ao grande tamanho do conjunto de dados.
Paralelismo de Tensores (TP) Dividir matrizes de parâmetros entre dispositivos, realizar computação distribuída e agregar resultados. Parâmetros de camada única excedendo a capacidade de memória do dispositivo.
Paralelismo de Pipeline (PP) Particionar camadas do modelo entre dispositivos, agendar micro-lotes através de pipeline. Memória insuficiente para modelos com profundidade extrema.
Paralelismo de Especialistas (EP) Roteamento dinâmico de entradas para sub-redes especialistas com ativação esparsa de parâmetros. Ineficiência de memória e computação em escala de trilhões de parâmetros.

Modelos modernos de grande escala (por exemplo, GPT-4, DeepSeek-V3) tipicamente integram múltiplas estratégias de paralelismo simultaneamente para maximizar a eficiência:

  • Paralelismo de Tensores (TP): Divide os parâmetros de camadas individuais entre dispositivos.
  • Paralelismo de Pipeline (PP): Distribui diferentes camadas do modelo entre dispositivos para processar em pipeline.
  • Paralelismo de Dados (DP): Sincroniza o treinamento em várias máquinas replicando o modelo e dividindo o conjunto de dados.
  • Paralelismo de Especialistas (EP): Expande parâmetros esparsos distribuindo especialistas entre dispositivos para modelos MoE.

Ao combinar essas estratégias, modelos grandes podem utilizar efetivamente os recursos de hardware disponíveis, escalando para tamanhos de modelo e conjuntos de dados maiores, mantendo a eficiência de treinamento e inferência.

O que é DeepEP?

DeepEP é uma biblioteca de comunicação projetada especificamente para MoE (Mixture-of-Experts) e EP (Expert Parallelism), oferecendo as seguintes vantagens principais:

  • 1. Comunicação All-to-All Altamente Otimizada

O DeepEP fornece um kernel de comunicação All-to-All eficiente que reduz significativamente os gargalos de transferência de dados, garantindo uma troca de informações mais suave entre especialistas em ambientes distribuídos.

  • 2. Suporte para NVLink e RDMA na Comunicação Intra-Nó/Inter-Nó

O DeepEP suporta ambas as tecnologias NVLink e RDMA, permitindo comunicação de alto desempenho dentro de nós e entre nós:

  • NVLink: Fornece largura de banda de até 160 GB/s para comunicação intra-nó.

  • RDMA: Permite transferências de dados de baixa latência entre nós, atendendo às demandas de treinamento distribuído em larga escala.

  • 3. Núcleo de Computação de Alto Rendimento

Para as fases de treinamento e pré-preenchimento de inferência, o DeepEP fornece um núcleo de computação de alto rendimento, garantindo o processamento eficiente de dados em larga escala.

  • 4. Núcleo de Computação de Baixa Latência

O DeepEP oferece um núcleo de computação de baixa latência baseado em RDMA/Infiniband, que minimiza a latência de inferência. Isso é especialmente benéfico para aplicações sensíveis à latência durante a fase de decodificação de inferência.

  • 5. Suporte Nativo para Distribuição de Dados FP8

O DeepEP suporta nativamente a distribuição de dados FP8, reduzindo o volume de transferência de dados enquanto mantém a precisão, melhorando ainda mais a eficiência da comunicação.

  • 6. Controle Flexível de Recursos da GPU

O DeepEP possui um mecanismo flexível de agendamento de recursos da GPU, permitindo a sobreposição eficiente de computação e comunicação. Isso minimiza o desperdício de recursos e melhora o desempenho geral.

EP VS DeepEP

Em essência, EP define o “o quê” (como dividir especialistas e distribuir cargas de trabalho), enquanto DeepEP fornece o “como” (mecanismos de comunicação eficientes para tornar o EP mais rápido e escalável).

ep vs deepep

Desempenho do DeepEP

O DeepEP mostra desempenho excepcional tanto na comunicação intra-nó quanto entre nós, particularmente em arquiteturas híbridas combinando NVLink e RDMA. Abaixo estão os resultados de desempenho em dois cenários típicos:

  • Ambiente de Teste:

    • GPU: H800 (NVLink com largura de banda máxima de ~160 GB/s)
    • Rede: CX7 InfiniBand 400 Gb/s RDMA NIC (largura de banda máxima ~50 GB/s)
    • Configuração: Configuração de pré-treinamento DeepSeek-V3/R1 (tamanho do lote: 4096 tokens, tamanho oculto: 7168, top-4 camadas, top-8 especialistas, distribuição FP8 e agregação BF16)
  • Resultados de Desempenho:

    • A comunicação intra-nó atinge largura de banda próxima ao máximo do NVLink (160 GB/s), demonstrando eficiência de transferência de dados extremamente alta.
    • A comunicação entre nós mantém largura de banda estável sob RDMA, atendendo aos requisitos para treinamento distribuído em larga escala.

Desempenho do Kernel Regular (NVLink e Encaminhamento RDMA)

Desempenho do Kernel de Baixa Latência (RDMA Puro)

  • Ambiente de Teste:

    • GPU: H800
    • Rede: CX7 InfiniBand 400 Gb/s RDMA NIC (largura de banda máxima ~50 GB/s)
    • Configuração: Configuração típica de produção DeepSeek-V3/R1 (tamanho do lote: 128 tokens, tamanho oculto: 7168, top-8 especialistas, distribuição FP8 e agregação BF16)
  • Resultados de Desempenho:

    • O kernel de baixa latência atinge latência em nível de microssegundos no modo RDMA puro, tornando-o adequado para tarefas de decodificação de inferência sensíveis à latência.
    • Mesmo sob alto paralelismo (#EP=256), a largura de banda RDMA permanece estável, garantindo transferência de dados eficiente.

Desempenho do Kernel de Baixa Latência (RDMA Puro)

Cenários de Aplicação do DeepEP

O DeepEP é adequado para vários cenários de treinamento e inferência de modelos MoE, particularmente em treinamento distribuído em larga escala. Os principais cenários de aplicação incluem:

  1. Treinamento de Modelos MoE

    • O núcleo de computação de alto rendimento e o mecanismo eficiente de comunicação All-to-All do DeepEP aceleram significativamente o processo de treinamento, especialmente em ambientes multi-nó e multi-GPU.
  2. Estágio de Pré-preenchimento de Inferência

    • Durante o estágio de pré-preenchimento de inferência, o núcleo de computação de alto rendimento do DeepEP processa eficientemente grandes quantidades de dados, garantindo um pipeline de inferência altamente eficiente.
  3. Estágio de Decodificação de Inferência

    • Para o estágio de decodificação, o núcleo de computação de baixa latência do DeepEP minimiza os atrasos de inferência, tornando-o ideal para aplicações em tempo real.

Conclusão

De acordo com os resultados da avaliação, o DeepGEMM demonstrou capacidades significativas de otimização de desempenho em múltiplas GPUs, incluindo H100, H200 e H800, destacando sua excelente versatilidade.

Para modelos da série MoE executados na arquitetura Hopper (como DeepSeek V3 e R1), ao integrar otimizações no módulo MoE do framework de inferência e substituir os GEMMs agrupados da versão CUTLASS original pela implementação DeepGEMM, espera-se que a inferência do modelo alcance aproximadamente 1,2x de aceleração, melhorando significativamente o desempenho geral.

Novita AI é uma plataforma de nuvem de IA que oferece aos desenvolvedores uma maneira fácil de implantar modelos de IA usando nossa API simples, além de fornecer a nuvem de GPU acessível e confiável para construir e escalar.

try deepseek r1

Obtenha $20 em créditos e experimente o DeepSeek agora!

Leitura Recomendada