O que ciclo de otimização com benchmarks faz?
Use este skill para converter "faça 20x mais rápido" ou "tente 50 otimizações recursivas" em um loop de medição controlado que pode realmente melhorar um sistema.
Linha de Base Necessária
Não otimize até que estes elementos existam:
- a operação que está sendo otimizada;
- o gate de correção que deve permanecer verde;
- a métrica: tempo de parede, latência p95, linhas/s, custo/execução, memória, taxa de erro;
- a linha de base atual;
- o orçamento de busca: máximo de variantes, tempo máximo, gasto máximo, impacto máximo nos dados.
Se o usuário solicitar um alvo irrealista, mantenha a ambição, mas torne o loop controlado e mensurável.
Loop
- Meça a linha de base.
- Identifique gargalos a partir de evidências.
- Gere variantes que testam uma hipótese cada.
- Execute variantes com a mesma forma de entrada.
- Rejeite variantes que falham em correção, segurança ou reprodutibilidade.
- Promova a variante segura mais rápida.
- Codifique o caminho vencedor em um script, comando, teste, configuração ou documento.
- Reexecute a linha de base e o vencedor para confirmar o delta.
Tabela de Variantes
Acompanhe as variantes assim:
Variante | Hipótese | Comando | Tempo | Correto? | Observações
linha de base | caminho atual | npm run job | 120s | sim | estável
lote-500 | menos viagens de ida e volta | npm run job -- --batch 500 | 42s | sim | vencedor
paralelo-8 | mais workers | npm run job -- --workers 8 | 31s | não | limitado por taxa
Busca Recursiva
Para trabalho recursivo ou de hiperparâmetros:
- persista cada execução em um registro;
- compare com o vencedor aceito anterior, não apenas com a execução anterior;
- mantenha uma verificação de reserva ou reprodução;
- pare quando a melhoria estiver dentro do ruído, a correção falhar, o custo exceder o orçamento, ou a busca começar a mudar mais variáveis do que pode explicar.
Use frases como "melhor variante segura medida" em vez de "ótimo global", a menos que o espaço de busca tenha sido realmente exaustivo.
Gate de Promoção
Uma variante não pode se tornar o novo padrão até que:
- os testes de correção sejam aprovados;
- o delta de desempenho seja repetido ou explicado;
- o rollback seja óbvio;
- a mudança esteja codificada no controle de versão ou em um runbook durável;
- o resumo final inclua comandos e medições exatos.