Skip to content
Switch branches/tags


Failed to load latest commit information.
Latest commit message
Commit time
Sep 17, 2017
Oct 4, 2017
Sep 16, 2017
Oct 4, 2017
Oct 10, 2017
Sep 17, 2017

Flamegraph generator for python's cProfile stats.

Flamegraphs allow to visualize relations between functions in a very compact and understandable manner.

Flameprof solves main problems of built-in cProfile reporting and can replace gprof2dot because later outputs very huge graphs with a lot of noise.

Flameprof works with profile stat files obtained by Profile.dump_stats() call or via direct script profiling:

python -m cProfile -o


Via pip:

pip install flameprof

Or you can invoke directly:

python > output.svg

Native svg (--format=svg)

Native svg features:

  • compact function names with full names in a tooltip
  • precise timings (cumulative and total)
  • call counts (in a tooltip on hover)
  • green bars show stack frames where flameprof starts to guess timing ratios
  • inverted flamegraph to show total time of all calls

Graph width, row height, font size and threshold can be set via appropriate cli options.

flameprof > requests.svg

Requests profile

Inverted flamegraph:

Requests profile

(Images are clickable)

Svg generated with (--format=log)

Also flameprof can output trace log suitable as input for

You can treat "samples" as microseconds by default (see --log-mult option).

flameprof --format=log | flamegraph > requests-flamegraph.svg

Requests profile with

(Image is clickable)