cargo-rtic-scope icon indicating copy to clipboard operation
cargo-rtic-scope copied to clipboard

Investigate external tools for graphical representations of traces

Open tmplt opened this issue 3 years ago • 5 comments

See https://www.brendangregg.com/flamegraphs.html

The whole website seems like an interesting read. We can probably find something to help us visualize traces of RTIC applications.

tmplt avatar Dec 07 '21 20:12 tmplt

Flame charts are more applicable because a flame graph does not have time on the x-axis. Can be found in Firefox and Chrome.

tmplt avatar Dec 07 '21 21:12 tmplt

To be able to exploit existing tools we'd need to be able to generate perf or DTrace output.

tmplt avatar Dec 07 '21 21:12 tmplt

orbuculum has some graphical tools we may be able to exploit. Specifically orbtop and orbstat.

tmplt avatar Jan 05 '22 12:01 tmplt

After a brief look at hotspot and similar tools, it seems like the most ubiquitous profilers are based upon a thread-based execution model with PC samples as the input data. RTIC is based upon exception handlers; PC samples can be generated, but these are not yet supported by RTIC Scope.

The information we want to plot is essentially a single state over time, with some details. The set of data we want to trace is likely to increase as development continues, but at present we'll need to resort to ah-hoc tools to get something useful. E.g. rtic-scope-rtic-racer and orbuculum tools.

tmplt avatar Jan 24 '22 10:01 tmplt

Some experimental work with Python plotting has been done in 0a8490c355e808c8b83261ce3d48d567f9e3396d.

tmplt avatar Mar 10 '22 06:03 tmplt