Go · Intermediário · Inglês · Técnico
benchmark
Função BenchmarkXxx(b *testing.B) que mede o desempenho de um trecho, repetindo-o b.N vezes. Roda com go test -bench e informa tempo e alocações por operação.
Onde usar
Usado antes e depois de otimizar, para provar que a mudança ajudou. A flag -benchmem mostra alocações, que costumam importar tanto quanto o tempo.
Em código
func BenchmarkSoma(b *testing.B) {
for i := 0; i < b.N; i++ {
Soma(2, 3)
}
}
// go test -bench=. -benchmemExemplos
Write a benchmark before you optimize this function.
Escreva um benchmark antes de otimizar esta função.
The benchmark shows two allocations per operation.
O benchmark mostra duas alocações por operação.
Cuidado
Não otimize sem medir; microbenchmarks podem enganar se o compilador eliminar o trabalho cujo resultado não é usado.
Sinônimos
teste de desempenho