2 pontos por GN⁺ 2025-04-26 | 1 comentários | Compartilhar no WhatsApp
  • DFloat11 é um framework de compressão sem perdas que reduz o tamanho de modelos de linguagem de grande porte (LLMs) em 30% enquanto mantém saídas bit a bit idênticas às do modelo original
  • Aproveita a baixa entropia da representação de pesos em BFloat16 para melhorar a ineficiência dos formatos de armazenamento existentes
  • Para inferência eficiente em GPU, desenvolveu kernels de GPU personalizados que oferecem suporte a descompressão online rápida
  • Experimentos com modelos recentes como Llama-3.1, Qwen-2.5 e Gemma-3 verificaram redução de 30% no tamanho do modelo e manutenção exata das saídas
  • Com um orçamento fixo de memória de GPU, permite comprimentos de contexto 5,3 a 13,17 vezes maiores do que modelos não comprimidos

70% do tamanho, 100% de precisão: compressão sem perdas de LLM para inferência eficiente em GPU

  • O tamanho dos modelos de linguagem de grande porte (LLMs) cresceu rapidamente, tornando a implantação eficiente em hardware com recursos limitados um grande desafio
  • Dynamic-Length Float (DFloat11) é um framework de compressão sem perdas que reduz o tamanho dos LLMs em 30% enquanto mantém saídas bit a bit idênticas
  • Aproveita a baixa entropia da representação de pesos em BFloat16 para melhorar a ineficiência dos formatos de armazenamento existentes
  • Aplica codificação por entropia para atribuir codificação de comprimento dinâmico aos pesos de acordo com a frequência, alcançando compressão ótima em termos de informação
  • Para inferência eficiente, foram desenvolvidos kernels de GPU personalizados para oferecer suporte a descompressão online rápida

Projeto do DFloat11

  • Decompõe tabelas de consulta (LUTs) intensivas em memória em LUTs comprimidas que cabem na SRAM da GPU
  • Desenvolve um kernel em duas etapas que ajusta as posições de leitura/escrita das threads usando variáveis auxiliares leves
  • Minimiza a latência por meio de descompressão no nível de bloco do transformer

Resultados experimentais

  • Em modelos recentes como Llama-3.1, Qwen-2.5 e Gemma-3, o DFloat11 verificou redução de 30% no tamanho do modelo e manutenção exata das saídas
  • Em comparação com alternativas que fazem offload de parte do modelo não comprimido para a CPU, alcança throughput 1,9 a 38,8 vezes maior
  • Com um orçamento fixo de memória de GPU, permite comprimentos de contexto 5,3 a 13,17 vezes maiores do que modelos não comprimidos

Vantagens do DFloat11

  • Permite inferência sem perdas do modelo Llama-3.1-405B de 810GB em um único nó com 8x80GB GPU
  • O código e o modelo são fornecidos em URL pública

1 comentários

 
GN⁺ 2025-04-26
Comentários do Hacker News
  • A alta faixa dinâmica do bfloat16 quase não é usada

    • As pessoas preferem hiperparâmetros como 0,01
    • Multiplicar todos os elementos da rede por 10^6 quase não faz diferença
    • A entropia típica dos valores bfloat16 é de 10-12 bits
    • Os bits de sinal e de mantissa são ruído incompressível
    • Técnicas de compressão sem perdas são usadas no laboratório de Martin Burtscher, no fpzip da LLNL, no dietgpu do Facebook etc.
    • rANS é mais eficiente que a codificação de Huffman em conjuntos de instruções SIMD
  • Possibilidade de executar um modelo de 405B parâmetros em um único nó

    • Oferece uma grande oportunidade para institutos de pesquisa e startups
  • Gratidão pelo rápido avanço dos modelos de ML/transformers

    • Fica a dúvida se o llama.cpp aproveita bem o cublas
  • Quando a guerra dos formatos de pesos terminar, o hardware poderá dar suporte a isso

    • É necessário hardware de multiplicação de matrizes ajustado ao formato de peso ideal
  • Em casos reais de uso com agentes, é difícil equilibrar qualidade, custo e desempenho

    • O dfloat11 pode ajudar a reduzir custos
  • Trabalho na xmad.ai

  • O ritmo do avanço tecnológico é rápido

    • Acho interessantes as melhorias de eficiência
  • O DFloat11 oferece throughput 1,9-38,8x maior do que descarregar um modelo não comprimido para a CPU

    • Também oferece comprimentos de contexto maiores com um orçamento fixo de memória de GPU
  • Fica a dúvida se os LLMs são limitados pela largura de banda de memória

  • Descobri uma forma de comprimir ainda mais imagens usando LLMs

    • Pretendo publicar um whitepaper relacionado
  • Fica a dúvida sobre a diferença em relação ao ZipNN

    • É difícil entender se é a base, se é diferente ou se é melhor
  • Acho que usar ternário em vez de binário pode gerar uma taxa de compressão maior