Ответ
Benchmark — это тест производительности кода, который измеряет время выполнения или потребление ресурсов. В Go бенчмарки пишутся с использованием пакета testing и функций, начинающихся с Benchmark.
Пример:
func BenchmarkSum(b *testing.B) {
for i := 0; i < b.N; i++ {
_ = 1 + 2 // Тестируемая операция
}
}
Запуск:
go test -bench=.
Ключевые моменты:
b.N— автоматически подбираемое количество итераций для стабильного измерения- Результат показывает ns/op (наносекунды на операцию)
- Можно тестировать память (
-benchmem) и сравнивать разные реализации