Profiling Go programs with pprof
jvns.ca · 2,074 words · saved by 1 readers
Profiling Go programs with pprof
Last week me and my cool coworker Josh were debugging some memory problems in a Go program using pprof . There's a bunch of pprof documentation on the internet but I found a few things confusing so here are some notes so I can find them easily. First - when working with pprof it's good to be running a recent version of Go! For example Go 1.8 adds mutex profiles so you can see mutex contention. in this post I'll link to the useful pprof resource I found explain what a pprof profile is give an example of how to look at a heap profile of a Go program explain a few things about the heap profiler w
saved by
related reading
- What is continuous profiling? | CNCFcncf.io
- Watch: How to get started with Grafana Phlare for continuous profilinggrafana.com
- Announcing Grafana Phlare, the open source database for continuous profiling at massive scalegrafana.com
- ObservabilityCON 2022: A guide to new OSS projects, LGTM stack updates, and more from Grafana Labsgrafana.com
- Diagnostics - The Go Programming Languagego.dev
- Golang landminesgist.github.com
- Frequently Asked Questions (FAQ) - The Go Programming Languagego.dev
- [Java][Profiling] Async-profiler - manual by use cases | JVM/Java profiling and tuningkrzysztofslusarski.github.io
- Go execution tracer | Gopher Academy Blogblog.gopheracademy.com
- Memory Allocation in Go | Melatoninghiant3223.github.io
- Profile-guided optimization - The Go Programming Languagego.dev
- Making a Go program run 1.7x faster with a one character change • Harry Marrhmarr.com