Pesquisadores da Universidade de Rice e Startup Xmad.ai têm flutuação detalhada de comprimento dinâmico (DFLOAT11), uma técnica que atinge aproximadamente 30% de compactação sem perdas para um modelo de linguagem grande armazenado no Common .
Apresentado em um artigo de Modelo de Modelo This Metes, o Método Reduz os requisitos de memória do modelo. Essa abordagem reduz significativamente a barreira de hardware para operar os maiores modelos; A equipe demonstrou o modelo de llama-3.1-405b do Meta 810GB do Meta em um único servidor com oito GPUs nvidia de 80 GB, uma configuração . AI Presents Memory System That Boosts LLM Efficiency by 75%
Exploiting BF16 Inefficiency
DFloat11 works by addressing Uma ineficiência estatística conhecida no formato numérico BF16, que usa 1 bit de sinal, 8 bits de expoente e 7 bits Mantissa. Enquanto 8 bits (256 valores possíveis) são alocados para o expoente, a análise dos pesquisadores confirmou que o conteúdo da informação real (entropia de Shannon) em vários LLMs como LLAMA 3, QWEN 2.5 e GEMMA 3 calcula apenas cerca de 2,6 bits. O DFLOAT11 aplica a codificação Huffman-um algoritmo clássico de compactação de dados sem perdas-especificamente aos valores do expoente. Os expoentes mais frequentes obtêm códigos mais curtos, os mais raros obtêm códigos mais longos. O sinal original e os bits de Mantissa são preservados sem compressão. Essa abordagem reduz efetivamente o armazenamento médio por parâmetro de 16 bits para cerca de 11 bits, produzindo a redução de ~ 30% de tamanho, garantindo que o valor decodificado seja matematicamente idêntico ao número original de BF16. GPUs. Como as unidades de matemática da GPU padrão, como os núcleos de tensoros, são otimizadas para entradas de tamanho fixo (como BF16 ou INT8), os pesos DFLOAT11 de comprimento variável devem ser descomprimidos de volta para BF16 imediatamente antes da computação. A decodificação tradicional do Huffman é inerentemente sequencial e lenta em hardware paralelo.
Para resolver isso, a equipe desenvolveu um kernel CUDA personalizado. Esse kernel emprega várias estratégias: usa tabelas compactas e multiníveis (totalizando apenas 1kb) projetadas para se encaixar no SRAM GPU rápido no chip; Ele usa um mecanismo bifásico com dados auxiliares mínimos para permitir que roscas paralelas calculem corretamente suas posições iniciais nos dados compactados e grave posições no buffer de saída; e processa pesos para um bloqueio de transformador inteiro para maximizar a taxa de transferência. O código, integrado à biblioteca de Transformers de Facos Abraçados, é uma fonte aberta .
No entanto, essa descompressão on-the-Fly apresenta uma troca de desempenho. Quando comparado à execução de um modelo BF16 não compactado em hardware com memória suficiente, o DFLOAT11 adiciona latência. Target=”_ Blank”> forneceu esclarecimentos No Reddit, observando que, para a inferência de tamanho 1 do lote em um A100, observou-se que o DFLOAT11 era aproximadamente 40% mais lento que o BF16 nativo. But because the decompression latency is relatively constant, it becomes less impactful at larger batch sizes, with near-parity (1.02x difference) observed at batch size 128.
The significant speedups reported in the paper (1.9x-38.8x higher throughput) relate specifically to comparing DFloat11 (on GPU) versus the alternative of running the uncompressed model partially offloaded to much slower Memória do sistema da CPU-um cenário exigido pelo VRAM insuficiente. Zhang resumiu:”Se as restrições de hardware (ajustando modelos maiores, seqüências mais longas ou lotes maiores) não forem a principal preocupação, não há muita motivação para usar o DF11″. Fatores como impacto potencial no consumo de energia ou estabilidade do sistema durante cargas de trabalho de descompressão prolongados também exigiriam avaliação em implantações do mundo real.
Acessibilidade de hardware e contextos mais longos
Apesar da troca de latência nos cenários e do candidato a Dfloat11. O artigo mostra que permite a LLAMA-3.3-70B em uma única GPU H200 de 141 GB e QWEN2.5-32B em um A6000 de 48 GB, ambos inviáveis com BF16 padrão. Isso potencialmente torna os modelos de ponta utilizáveis para organizações com orçamentos menores de GPU. Ao permitir mais espaço para esse cache, o DFLOAT11 permitiu que os modelos processem 5.3x a 13.17x sequências mais longas Comparado a BF16 no número de hardwares. Para facilitar a adoção, a equipe fez modelos DFLOAT11 pré-compostos disponíveis no HUSTGEM FACE . Métodos agressivos de compressão com perdas como quantização de 4 ou 8 bits. Embora os benchmarks geralmente indiquem impacto mínimo de formatos como Int8 ou FP8, o artigo DFLOAT11 argumenta que eles podem não capturar totalmente degradações sutis de qualidade, principalmente para o raciocínio complexo. Eles citam Exemplos de quedas de desempenho Observados em avaliações específicas para os modelos quantizados. que alguns usuários finais preferem evitar, pois cria variáveis não controladas que devem ser testadas empiricamente para cada cenário de implantação”. Para aplicações como processamento de documentos sensíveis, onde a confiabilidade é fundamental, a garantia de saída idêntica bit-in-bit oferecida por uma abordagem sem perdas pode ser essencial. zipnn , por exemplo, usa a descompressão baseada em CPU principalmente para acelerar o carregamento do modelo e reduzir a pegada de armazenamento. Tentativas anteriores de sem perdas aceleradas por GPU, como neuzip Usando a codificação de ANS, por meio da codificação do NVID, foi relatada como de maneira significativa. Taxa de descompressão muito maior em comparação com implementação do ANS da NVComp nos benchmarks do artigo. Ele também aborda um ângulo de eficiência diferente do que métodos como o NAMM de Sakana AI, que otimiza o cache KV para contextos longos, em vez de comprimir pesos estáticos. O DFLOAT11 oferece uma solução específica para ajustar modelos grandes na memória GPU restrita sem comprometer a fidelidade de saída.