Repolode
sharkdp

sharkdp/hyperfine

Ferramenta de linha de comando para comparar o desempenho de comandos, com análise estatística, execuções de aquecimento e exportação para CSV, JSON, Markdown e AsciiDoc.

Estrelas
29,139
Forks
555
Issues abertas
62
Último commit
há 10 dias

O que é?

hyperfine mede quanto tempo comandos de shell levam para executar. Você informa um ou mais comandos; a ferramenta executa cada um repetidamente, apresenta média, desvio padrão, mediana, mínimo e máximo e identifica valores atípicos estatísticos, que podem ser causados por interferência ou efeitos de cache. Quando você informa vários comandos, ela mostra as diferenças relativas de velocidade em comparação com o primeiro.

Além do tempo de execução, a ferramenta pode coletar o tempo de CPU em modo usuário e sistema, o pico de memória e, no Linux, contadores de hardware como ciclos, instruções e falhas de cache. Execuções de aquecimento e comandos de preparação por execução, como limpar os caches do sistema de arquivos, permitem comparar cenários com cache aquecido ou frio. Varreduras e listas de parâmetros geram uma série de benchmarks a partir de um único modelo.

Os resultados podem ser exportados para CSV, JSON, Markdown, AsciiDoc ou org-mode. A saída JSON pode ser analisada com mais detalhes usando os scripts auxiliares em Python do repositório, que geram histogramas e gráficos de caixa e bigodes. A ferramenta funciona em Linux, macOS e Windows e está disponível em pacotes para a maioria dos principais sistemas operacionais.

Recursos principais

  • 01Executa comandos repetidamente e apresenta média, mediana, desvio padrão, mínimo e máximo.
  • 02Detecta valores atípicos estatísticos que podem ser causados por interferência ou efeitos de cache.
  • 03Oferece execuções de aquecimento e comandos de preparação para controlar o estado do cache.
  • 04Gera benchmarks a partir de um modelo usando varreduras e listas de parâmetros.
  • 05Coleta métricas de tempo de execução, CPU e memória e, no Linux, de contadores de hardware.
  • 06Exporta resultados para CSV, JSON, Markdown, AsciiDoc e org-mode.

Casos de uso

  • Comparar a velocidade de duas ferramentas de linha de comando que fazem o mesmo trabalho, como grep e ripgrep.
  • Medir o efeito de uma alteração de código no tempo de execução de um build ou script em diferentes branches do git.
  • Testar o desempenho de programas com caches de disco aquecidos ou frios.
  • Gerar tabelas de benchmark para documentação ou relatórios.

Início rápido

  1. 1

    Instalar no Ubuntu a partir dos repositórios oficiais

    apt install hyperfine
  2. 2

    Executar um primeiro benchmark de um comando

    hyperfine 'sleep 0.3'

Antes de usar

  • Alguns recursos, como contadores de hardware, estão disponíveis apenas no Linux ou não são compatíveis com o Windows.

Tópicos

Perguntas frequentes

O que é hyperfine?
Ferramenta de linha de comando para comparar o desempenho de comandos, com análise estatística, execuções de aquecimento e exportação para CSV, JSON, Markdown e AsciiDoc. hyperfine mede quanto tempo comandos de shell levam para executar. Você informa um ou mais comandos; a ferramenta executa cada um repetidamente, apresenta média, desvio padrão, mediana, mínimo e máximo e identifica valores atípicos estatísticos, que podem ser causados por interferência ou efeitos de cache. Quando você informa vários comandos, ela mostra as diferenças relativas de velocidade em comparação com o primeiro.
hyperfine é gratuito? Qual é a licença?
hyperfine é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
hyperfine ainda é mantido?
Manutenção ativa. O último commit de hyperfine foi em 12 de out. de 2026.
Para que posso usar hyperfine?
Comparar a velocidade de duas ferramentas de linha de comando que fazem o mesmo trabalho, como grep e ripgrep. Medir o efeito de uma alteração de código no tempo de execução de um build ou script em diferentes branches do git. Testar o desempenho de programas com caches de disco aquecidos ou frios. Gerar tabelas de benchmark para documentação ou relatórios.
Como instalar hyperfine?
Instalar no Ubuntu a partir dos repositórios oficiais: apt install hyperfine Executar um primeiro benchmark de um comando: hyperfine 'sleep 0.3'
Onde consigo hyperfine?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/sharkdp/hyperfine

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados