fgprof is a sampling Go profiler that allows you to analyze On-CPU as well as Off-CPU (e.g. I/O) time together. Go's builtin sampling CPU profiler can only show On-CPU time, but it's better than fgprof at that. Go also includes tracing profilers that can analyze I/O, but they can't be combined with the CPU profiler. fgprof is designed for analyzing applications with mixed I/O and CPU workloads. This kind of profiling is also known as wall-clock profiling. If this is the first time you hear about fgprof, you should start by reading about The Problem & How it Works. fgprof is compatible with the go tool pprof visualizer. Which tool you prefer is up to you, but one thing I like about Gregg's tool is that you can filter the plaintext files using grep which can be very useful when analyzing large programs.

Features

  • fgprof is compatible with the go tool pprof visualizer
  • fgprof is designed for analyzing applications with mixed I/O and CPU workloads
  • fgprof is a sampling Go profiler that allows you to analyze On-CPU as well as Off-CPU
  • Go's builtin sampling CPU profiler can only show On-CPU time
  • fgprof is implemented as a background goroutine that wakes up 99 times per second
  • This data is used to maintain an in-memory stack counter which can be converted to the pprof or folded output format

Project Samples

Project Activity

See All Activity >

Categories

Frameworks

License

MIT License

Follow fgprof

fgprof Web Site

Other Useful Business Software
Go From AI Idea to AI App Fast Icon
Go From AI Idea to AI App Fast

One platform to build, fine-tune, and deploy ML models. No MLOps team required.

Access Gemini 3 and 200+ models. Build chatbots, agents, or custom models with built-in monitoring and scaling.
Try Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of fgprof!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Go

Related Categories

Go Frameworks

Registered

2023-01-20