Benchmark de Compressão

Compacte seu próprio arquivo com gzip, Brotli e Zstandard nos níveis que escolher e compare tamanho, taxa, velocidade e memória, tudo no navegador.

Os dados inseridos e arquivos ficam no navegador

Arquivo e codecs

Arquivo para compactar

Qualquer arquivo local. Ele permanece neste dispositivo.

Codecs e níveis
níveis 0–9
níveis 0–11
níveis 1–22

CompressionStream deste navegador; não tem ajuste de nível.

Cada codec e nível roda em seu próprio Web Worker sobre uma cópia da amostra na memória. Nada é enviado ou salvo.

Níveis altos são lentos: Brotli 10–11 e Zstandard 19–22 podem levar minutos em 64 MiB. Comece com uma amostra menor.

Resultados

Escolha um arquivo para ver o quanto cada codec o reduz e com que velocidade.

Nesta página

O Benchmark de Compressão compacta um arquivo que você escolher com gzip, Brotli e Zstandard em vários níveis e mostra lado a lado o tamanho compactado, a taxa, o espaço economizado, a velocidade de compressão e de descompressão e a memória do WebAssembly. Ele responde qual codec e nível combinam com seus dados, usando os seus dados, sem enviá-los.

Funcionalidade detalhada

De 1 a 256 MiB iniciais do arquivo são lidos para a memória, e então cada codec e nível roda em um Web Worker novo: gzip via Deflate compatível com zlib, Brotli com janela de 4 MiB e Zstandard com checksum, todos compilados para WebAssembly, além do gzip do próprio CompressionStream do navegador para comparação. Apenas as chamadas do codec são cronometradas.

Com a verificação ativada, cada resultado é descompactado em outro worker novo e comparado com o original pelo tamanho e pelo CRC-32, o que também mede a velocidade de descompressão. Como cada execução começa com um heap do WebAssembly vazio, a coluna de memória mostra o que aquele codec e nível realmente precisaram.

A tabela destaca a menor saída e a compressão mais rápida e pode ser baixada como CSV com os números brutos. Qualquer linha pode compactar o arquivo inteiro com suas configurações e salvá-lo como .gz, .br ou .zst.

Exemplos práticos

Respostas de API em JSON: uma exportação JSON de 16 MiB mostra gzip 6 em cerca de 8×, Brotli 9 perto de 11× e Zstandard 3 próximo do tamanho do gzip com várias vezes a sua velocidade.

Escolhendo um nível para logs: os níveis 1, 3, 9 e 19 do Zstandard mostram onde mais tempo de CPU deixa de render muito em tamanho.

Dados já compactados: um JPEG ou um ZIP dá taxas perto de 1.0×, o que indica que compactá-lo de novo é trabalho perdido.

Assets estáticos: compare Brotli 11 com gzip 9 para um arquivo JavaScript empacotado antes de configurar assets pré-compactados em um servidor.

Como usar esta ferramenta

  1. Escolha um arquivo

    Solte ou escolha qualquer arquivo. O benchmark começa na hora com os codecs e níveis padrão.

  2. Escolha codecs e níveis

    Ative ou desative codecs e digite níveis como 1, 6, 9 ou um intervalo como 3-5. Escolha quanto do arquivo testar.

  3. Execute e compare

    Escolha “Executar benchmark”. As linhas aparecem à medida que cada execução termina; os resultados menores e mais rápidos são destacados.

  4. Salve

    Baixe a tabela como CSV ou escolha “Salvar” em uma linha para compactar o arquivo inteiro com essas configurações.

Dicas e melhores práticas

  • Texto, JSON, CSV e logs compactam bem; imagens, vídeos e arquivos compactados quase não diminuem.
  • Brotli e Zstandard descompactam muito mais rápido do que compactam em níveis altos, o que combina com arquivos compactados uma vez e lidos com frequência.
  • Os tempos dependem do dispositivo e do navegador; compare execuções feitas na mesma máquina.
  • Para ver o conteúdo de um arquivo compactado ou extraí-lo, use o “Explorador de Arquivos Compactados”.

Ajude a escolher o próximo passo

O que devemos melhorar a seguir?

Escolha uma sugestão. São ideias, não funcionalidades prometidas.

Escolha uma opção

O voto envia apenas a opção escolhida como uma contagem anónima. Não contém entradas, dados de ficheiros, URL, cookies nem identificadores e não é guardado neste navegador. Recarregar a página permite votar novamente.