Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save naumvd95/799315e4afda8b6678cda0b146736f74 to your computer and use it in GitHub Desktop.
Save naumvd95/799315e4afda8b6678cda0b146736f74 to your computer and use it in GitHub Desktop.
Go cpu and memory profiling benchmarks. #golang #benchmark
go test -run=. -bench=. -benchtime=5s -count 5 -benchmem -cpuprofile=cpu.out -memprofile=mem.out -trace=trace.out ./package | tee bench.txt
go tool pprof -http :8080 cpu.out
go tool pprof -http :8081 mem.out
go tool trace trace.out
go tool pprof $FILENAME.test cpu.out
# (pprof) list <func name>
# go get -u golang.org/x/perf/cmd/benchstat
benchstat bench.txt
rm cpu.out mem.out trace.out *.test
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment