Pesquisa de site

Algoritmo de Compressão Sem Perdas LZ4 1.10 Lançado


Algoritmo de compressão LZ4 1.10 lançado com multithreading, melhorando dramaticamente as velocidades de compressão em até 8 vezes.

LZ4, um algoritmo de compressão open-source multiplataforma amplamente utilizado, conhecido por sua velocidade e eficiência, acaba de alcançar a versão 1.10.

Esta última atualização introduz melhorias significativas, especialmente o suporte a multithreading, que aproveita processadores multicore modernos para acelerar tarefas de compressão e descompressão em ambientes de alta demanda.

Para aqueles que podem não saber, o LZ4 é especialmente preferido quando a velocidade é priorizada em vez da taxa de compressão, como em transmissões ou aplicações em tempo real.

Novidades no LZ4 1.10

Até agora, o LZ4 operava principalmente como um processo de thread única. No entanto, a versão 1.10 muda isso completamente.

Multithreading LZ4: Um Marco

O recurso principal do LZ4 1.10 é sua capacidade de multithreading. Ao permitir que vários threads processem dados simultaneamente, o LZ4 reduz significativamente o tempo necessário para comprimir e descomprimir arquivos grandes.

Isso é particularmente benéfico ao usar modos de alta compressão, que geralmente exigem mais do processador. Os benchmarks mais recentes ilustram de forma clara as melhorias em diferentes sistemas operacionais:

  • No Windows 11, usando um processador AMD 7840HS, o tempo de compressão melhorou de 13,4 segundos para apenas 1,8 segundos — um aumento de velocidade de 7,4 vezes.
  • Usuários de macOS com o chip M1 Pro verão uma redução de 16,6 segundos para 2,55 segundos, um desempenho 6,5 vezes mais rápido.
  • Para usuários de Linux com um i7-9700k, o tempo de compressão foi reduzido de 16,2 segundos para 3,05 segundos, atingindo um aumento de velocidade de 5,4 vezes.

Essas melhorias não se limitam apenas à compressão. A descompressão também se beneficia do multithreading, embora em menor grau, já que drives NVMe modernos ainda podem ser saturados com apenas um único thread.

No entanto, a sobreposição das operações de E/S com os processos de descompressão aumenta ainda mais o desempenho.

Compressão Aprimorada de Dicionário

Outra melhoria significativa no LZ4 1.10 é o suporte oficial para compressão e descompressão com dicionário, que passou de experimental para totalmente suportado.

Isso permite que os desenvolvedores usem o LZ4 de forma mais confiável em aplicações que se beneficiam de técnicas de dicionário, como transferências de dados pequenas onde a inicialização pode ser um gargalo.

Novo Nível de Compressão e Outras Melhorias

O LZ4 1.10 introduz uma nova opção de compressão “Nível 2”, que equilibra desempenho e taxa de compressão, oferecendo uma solução ideal para muitas aplicações.

Além disso, a atualização inclui várias melhorias, como melhor suporte à plataforma, tratamento de erros aprimorado e configuração mais flexível por meio de variáveis de ambiente.

Por fim, a versão oferece suporte a arquiteturas menos conhecidas, como LoongArch, RISC-V e outras, garantindo a portabilidade do LZ4 em diversas plataformas.

Para uma análise detalhada de todas as novidades no LZ4 1.10, consulte o changelog completo.