Skip to main content

benchmark

Create or modify hot-path code or optimizations should be validated by a Go Benchmark

Informations de source

Dépôt
zalando/skipper
Dernière activité de la source
31 août 2026 à 13:54
Langue détectée de SKILL.md
anglais
Étoiles
3 331
Forks
409

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
benchmark
description
Create or modify hot-path code or optimizations should be validated by a Go Benchmark
license
MIT
compatibility
opencode, claude
metadata
{"audience":"maintainers, contributors"}
## What I do - focus on performance and allocations ## When to use me Use this when you are creating or modifying code in the hot path. ## Quick start ### Benchmarks Write benchmarks alongside any performance-sensitive change. Use `benchstat` with `-count 20` to compare. Always report `sec/op`, `B/op`, and `allocs/op`. Target zero allocations in hot-path code. ```go func BenchmarkMyPredicate(b *testing.B) { p := &predicate{...} req := httptest.NewRequest("GET", "/", nil) req.Header.Set("Authorization", "Bearer "+testToken) b.ReportAllocs() b.ResetTimer() for b.Loop() { p.Match(req) } } ``` Example run: ```bash % go test -bench=BenchmarkMyPredicate -benchmem -run='^$' -count 20 -cpu 1,2,4,8,16 ./predicates/mypredicate > old.txt # ..edit code.. % go test -bench=BenchmarkMyPredicate -benchmem -run='^$' -count 20 -cpu 1,2,4,8,16 ./predicates/mypredicate > new.txt % benchstat old.txt new.txt ``` Show the output of benchstat to the developer.
Voir sur GitHub