Sobre o projeto

Conductress é um framework para benchmarking do Valkey, projetado para enfileirar e executar testes de desempenho, memória e replicação. Ele coleta e registra dados de benchmark para análise. A ferramenta fornece uma interface de usuário baseada em texto (TUI) para monitoramento interativo e enfileiramento de tarefas, e uma interface de linha de comando (CLI) para automação via script. Os usuários podem enfileirar tarefas com parâmetros configuráveis, incluindo tipos de teste (ex: get, set, mget), tamanhos de valor, contagem de threads de IO, níveis de pipelining, durações de warmup e de teste, e repetições. A CLI computa o produto cartesiano de parâmetros de múltiplos valores, gerando tarefas separadas para cada combinação. Os benchmarks podem ser executados em servidores remotos (via SSH) ou no localhost. A configuração envolve a configuração de servidores e a instalação de dependências. O framework suporta benchmarking de tamanho de chave gerando chaves preenchidas e tarefas SET apenas de inserção que medem o desempenho do caminho de novas chaves. Os resultados são agregados quando repetições são especificadas, computando a média de requisições por segundo e intervalos de confiança de 95%. O módulo de análise compara dois especificadores (branches, tags ou commits) usando o teste t de Welch, apresentando deltas, p-values e precisão de medição. A saída inclui um resumo de mudanças significativas e tamanhos de efeito detectáveis. Recursos adicionais incluem a coleta de contadores de desempenho de hardware, geração de flame graphs e registro de crashes.