4 ms·
How was the flame graph created? (Not very familiar with C and the performance tools around it)
by SomaticPirate 1y ago
How was the flame graph created? (Not very familiar with C and the performance tools around it)
- plorkyeran 1y agohttps://github.com/brendangregg/FlameGraph https://github.com/brendangregg/FlameGraph You record performance data with `perf`, then use the scripts there to turn it into a SVG.
- immortaljoe 1y agoOP here. In this particular case, I used https://github.com/flamegraph-rs/flamegraph https://github.com/flamegraph-rs/flamegraph
- IshKebab 1y agoI strongly recommend not using this. Instead use pprof - it has a MUCH better interactive flamegraph, plus other nice performance visualisations (e.g. a call graph): https://github.com/google/pprof https://github.com/google/pprof go install github.com/google/pprof@latest pprof -http=: prof.out I normally collect the profiles with gperftools (https://github.com/gperftools/gperftools https://github.com/gperftools/gperftools) and then just LD_PRELOAD=/usr/lib/libtcmalloc_and_profiler.so CPUPROFILE=prof.out <your command> I've been meaning to try Samply though. Not sure if it works with pprof.
- landr0id 1y agoYou can also use https://github.com/mstange/samply https://github.com/mstange/samply to make recording and viewing in the Firefox profiler easier. It will spin up a localhost server after the trace ends, the profiler uses the localhost server and nothing is shared with Firefox servers unless you explicitly choose to upload the data and create a permalink.