Phoronix Test Suite - Framework de Benchmarking Automatizado
O Phoronix Test Suite (PTS) é um framework de benchmarking automatizado de código aberto e multiplataforma. Fornece centenas de perfis de teste baixáveis (CPU, GPU, disco, memória, compiladores, bancos de dados e muito mais), lida com sua instalação e dependências, os executa reproduzivelmente, agrega resultados e pode enviar/comparar via OpenBenchmarking.org. Transforma “benchmark meu sistema” de uma tarefa manual em um processo turn-key, reproduzível e compartilhável.
Instalação
| Plataforma | Comando |
|---|
| Debian/Ubuntu | sudo apt install phoronix-test-suite |
| Fedora/RHEL | sudo dnf install phoronix-test-suite |
| Arch (AUR) | yay -S phoronix-test-suite |
| Genérico | baixe o tarball de release, execute ./install-sh |
| Requisito | PHP (CLI) é necessário |
| Verificar | phoronix-test-suite version |
Conceitos Principais
| Termo | Significado |
|---|
| Perfil de teste | Um único benchmark (ex. pts/stress-ng) |
| Suite de testes | Um pacote de perfis de teste relacionados |
| Resultado | Saída de benchmark salva para um sistema |
| OpenBenchmarking.org | Repositório na nuvem de perfis e resultados compartilhados |
| Modo batch | Execuções não-interativas para automação |
Encontrando e Instalando Testes
| Comando | Descrição |
|---|
phoronix-test-suite list-available-tests | Liste todos os perfis de teste baixáveis |
phoronix-test-suite list-available-suites | Liste suites de testes |
phoronix-test-suite search compress | Pesquise testes |
phoronix-test-suite info pts/stress-ng | Mostre detalhes sobre um perfil |
phoronix-test-suite install pts/stress-ng | Baixe e instale um teste |
Executando Benchmarks
| Comando | Descrição |
|---|
phoronix-test-suite benchmark pts/stress-ng | Instale + execute em uma etapa |
phoronix-test-suite run pts/c-ray | Execute um teste instalado |
phoronix-test-suite default-run pts/cpu | Execute com opções padrão |
phoronix-test-suite benchmark build-linux-kernel | Compile-o-kernel stress (CPU+RAM+bus) |
phoronix-test-suite finish-run RESULT | Retome/complete uma execução salva |
Durante uma execução PTS solicita um nome de resultado e pode repetir testes para calcular uma média confiante.
Gerenciando Resultados
| Comando | Descrição |
|---|
phoronix-test-suite list-saved-results | Liste resultados locais |
phoronix-test-suite show-result RESULT | Exiba um resultado |
phoronix-test-suite compare-results-to-baseline | Compare contra uma baseline |
phoronix-test-suite merge-results A B | Mescle arquivos de resultado |
phoronix-test-suite result-file-to-csv RESULT | Exporte para CSV |
phoronix-test-suite remove-result RESULT | Delete um resultado |
Comparando Sistemas
# Execute o mesmo teste em duas máquinas, dê IDs de resultado correspondentes, depois:
phoronix-test-suite merge-results machineA machineB
phoronix-test-suite show-result merged # comparação lado a lado
Batch / Automação
| Comando | Descrição |
|---|
phoronix-test-suite batch-setup | Configure padrões não-interativos |
phoronix-test-suite batch-benchmark pts/cpu | Execute sem prompts |
TEST_RESULTS_NAME=run1 phoronix-test-suite ... | Defina nome de resultado via env |
| Vars de env | FORCE_TIMES_TO_RUN, BATCH_MODE, etc. controlam execuções |
| Comando | Descrição |
|---|
phoronix-test-suite system-info | Inventário detalhado de hardware/software |
phoronix-test-suite system-sensors | Leia sensores disponíveis |
phoronix-test-suite diagnostics | Diagnósticos de ambiente |
Fluxos de Trabalho Comuns
# Soak de CPU + memória turn-key via teste de compilação de kernel
phoronix-test-suite benchmark build-linux-kernel
# Benchmark de armazenamento reproduzível, exportado para relatório
phoronix-test-suite benchmark pts/fio
phoronix-test-suite result-file-to-csv <result-name>
# Validação de estabilidade combinando ferramentas: PTS para carga, observe dmesg/journal
phoronix-test-suite batch-benchmark pts/stress-ng
Phoronix Test Suite vs Ferramentas Únicas
| Aspecto | Phoronix Test Suite | sysbench | stress-ng |
|---|
| Escopo | Centenas de perfis, muitos domínios | CPU/mem/IO/DB | Carregadores de stress CPU/mem/IO |
| Automação | Completa (batch, perfis, resultados) | Scripting manual | Flags manuais |
| Compartilhamento de resultado | OpenBenchmarking.org | Nenhum | Nenhum |
| Melhor para | Suites comparáveis e reproduzíveis | Micro-benchmarks direcionados | Carga de stress/estabilidade |
Recursos