1 pontos por GN⁺ 2024-12-25 | 1 comentários | Compartilhar no WhatsApp
  • Importância do MLC-LLM

    • O MLC-LLM permite compilar e implantar LLMs em GPUs AMD usando ROCm.
    • A AMD Radeon™ RX 7900 XTX entrega 80% do desempenho da NVIDIA® GeForce RTX™ 4090 e 94% da NVIDIA® RTX™ 3090Ti.
    • Com suporte a Vulkan, também é possível implantar LLMs em dispositivos AMD APU como o SteamDeck.
  • Contexto

    • Desde a expansão dos LLMs de código aberto, surgiram muitas soluções de inferência de LLM.
    • A maioria das soluções de alta performance é baseada em CUDA e otimizada para GPUs NVIDIA.
    • Com a alta demanda por disponibilidade computacional, torna-se útil suportar uma gama mais ampla de aceleradores de hardware.
    • A AMD é um candidato em potencial.
  • Discussão de hardware e software

    • A AMD RX 7900 XTX possui especificações comparáveis à NVIDIA RTX 4090 e RTX 3090 Ti.
    • Todos os modelos têm 24 GB de memória, o que permite acomodar modelos de mesmo porte.
    • O desempenho FP16 é 2 vezes maior no 4090 do que no 7900 XTX, e 1,3 vez maior no 3090 Ti.
    • O RX 7900 XTX é 40% mais barato que o RTX 4090.
    • O motivo de a AMD ter ficado para trás no passado foi a falta de suporte de software, e não de hardware.
  • Compilação de machine learning para ROCm

    • A compilação de machine learning (MLC) é uma tecnologia nova que automatiza a otimização de workloads de machine learning.
    • O MLC-LLM é baseado no Apache TVM Unity e oferece implantação unificada de alto desempenho para diversos backends.
    • Por meio de um fluxo de trabalho baseado em Python, compila modelos de linguagem e otimiza o layout e o escalonamento dos kernels de GPU.
  • MLC para GPUs e APUs AMD

    • Várias opções para suportar GPUs AMD: ROCm, OpenCL, Vulkan e WebGPU.
    • A stack ROCm, impulsionada recentemente pela AMD, inclui muitos componentes semelhantes à stack CUDA.
    • O Vulkan é o padrão gráfico mais recente e oferece o suporte mais amplo entre dispositivos GPU.
    • O MLC suporta geração automática de código, viabilizando diversas abordagens sem precisar reestruturar cada kernel de GPU.
  • Benchmark com o pacote MLC Python

    • Foi feito benchmark dos modelos Llama 2 7B e 13B com quantização de 4 bits.
    • O desempenho de inferência de lote único alcançou 80% da velocidade da NVIDIA 4090 com o lançamento do ROCm 5.6.
  • Execução com Vulkan no SteamDeck

    • É possível executar em um SteamDeck com APU AMD usando Vulkan.
    • No ROCm, a VRAM da GPU fica limitada a 4 GB pela BIOS, mas o driver Mesa Vulkan pode usar memória unificada para ampliar até 16 GB.
  • Discussão e próximos passos

    • A disponibilidade de hardware se destaca como um ponto crítico na era da IA generativa.
    • A compilação de ML permite implantação unificada de alto desempenho em todo o backend de hardware.
    • Pesquisas sobre GPUs de consumo também podem se generalizar para GPUs em nuvem.
    • A comunidade é encorajada a construir soluções baseadas no fluxo de implantação unificada do MLC.
  • Conclusão final

    • A engenharia de sistemas de machine learning é uma atividade contínua.
    • A NVIDIA ainda lidera essa área por meio de inovação e deve continuar evoluindo com novos avanços em hardware e software.
    • Graças ao fluxo de desenvolvimento de compilação de ML baseado em Python, foi possível obter suporte de otimização para ROCm em poucas horas.
  • Links e agradecimentos

    • Para mais detalhes sobre a implantação do MLC LLM, consulte a página do projeto.
    • O código-fonte do MLC LLM pode ser encontrado no repositório oficial do GitHub.
    • Agradecimentos à comunidade Apache TVM e aos desenvolvedores do compilador TVM Unity.

1 comentários

 
GN⁺ 2024-12-25
Comentário do Hacker News
  • O desempenho da GPU para consumidores da AMD (RX7900XTX) é diferente do da GPU de datacenter da AMD (MI300X) porque há diferença de arquitetura entre RDNA e CDNA. A AMD está prevista para lançar a arquitetura UDNA por volta de 2026. A CentML está integrando suporte a AMD CDNA e HIP no compilador de deep learning Hidet.

  • Várias startups estão tentando quebrar a supremacia da Nvidia usando GPUs da AMD. Entre elas estão Felafax, Lamini, tensorwave e SlashML. Algumas afirmam que a barreira do CUDA é de cerca de 18 meses.

  • Uma equipe que trabalhava com TVM e MLC se juntou à NVIDIA na OctoAI.

  • Testar o Phi-4 Q6 no 7950x e no 7900XT mostrou que ele fica muito rápido usando apenas CPU, e confirmou-se o potencial de uso doméstico da AMD.

  • Não consigo entender por que a comunidade de ML não sai do CUDA. O CUDA é fechado e não é multiplataforma. Com os avanços de IA/LLM, uma migração para multiplataforma deveria ter acontecido mais rápido.

  • As GPUs RTX 3090 usadas custam entre US$ 600 e 900, oferecem melhor desempenho que a 7900 e, graças ao CUDA, são mais versáteis.

  • O foco em melhorar a eficiência é importante. Além da eficiência de custo, também é necessária eficiência de energia e computação. Estou testando inferência em CPU comum com o llama.cpp.

  • A Modular afirma ter alcançado 79% de utilização de GPU em GPUs AMD e planeja um lançamento de prévia oficial para o início do próximo ano. Está otimista por conta de feedback positivo sobre o desempenho das GPUs Nvidia.