Design, run, compare, and interpret Go performance evidence using benchmarks, B.Loop, benchstat, pprof, traces, escape analysis, cache locality, false sharing, sync.Pool, GC limits, container CPU behavior, and PGO.
Use when investigating Go latency, throughput, CPU, memory, allocations, contention, runtime behavior, performance regressions, or optimization claims.
Similar popular skills
Related neighbors and high-traction skills in the same topics — useful to compare before installing.
Do not optimize from one benchmark line or an unrepresentative microbenchmark.
Do not compare runs made under materially different environments.
Do not treat coverage or race detection as performance evidence.
Name the profile sample type and distinguish flat from cumulative cost.
Prefer B.Loop only when the pinned Go version supports it.
Keep production profile endpoints protected and operationally controlled.
Do not encode cache-line size, escape output, or inliner budgets as portable facts.
Do not use sync.Pool as a cache or resource owner.
Source Notes
Guidance is transformed and paraphrased from Inanc Gumus, Go by Example: Programmer's Guide to Idiomatic and Testable Programs (Manning, 2025), especially Chapter 3. Examples are original.
Diagnostics, locality, allocation, GC, and container guidance also incorporates transformed material from Teiva Harsanyi, 100 Go Mistakes and How to Avoid Them (Manning, 2022), Chapter 12.