Performance benchmarking techniques and analysis. Use when measuring performance.
This skill inherits all available tools. When active, it can use any tool Claude has access to.
Performance benchmarking techniques for Go.
Use when measuring or comparing performance.
func BenchmarkGetUser(b *testing.B) {
svc := NewService()
ctx := context.Background()
b.ResetTimer()
for i := 0; i < b.N; i++ {
_, _ = svc.GetUser(ctx, 1)
}
}
# Run all benchmarks
go test -bench=. -benchmem ./...
# Specific benchmark
go test -bench=BenchmarkGetUser -benchmem
# Multiple runs for accuracy
go test -bench=. -benchmem -count=10
BenchmarkGetUser-8 1000000 1250 ns/op 320 B/op 5 allocs/op
1000000 - iterations1250 ns/op - time per operation320 B/op - bytes allocated5 allocs/op - allocations per operationgo test -bench=. -count=10 > old.txt
# make changes
go test -bench=. -count=10 > new.txt
benchstat old.txt new.txt
b.ResetTimer() after setup-count)benchstat for comparison