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
Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
Start 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