cargo-rtic-scope
cargo-rtic-scope copied to clipboard
Investigate external tools for graphical representations of traces
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.
Flame charts are more applicable because a flame graph does not have time on the x-axis. Can be found in Firefox and Chrome.
To be able to exploit existing tools we'd need to be able to generate perf or DTrace output.
orbuculum has some graphical tools we may be able to exploit. Specifically orbtop and orbstat.
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.
Some experimental work with Python plotting has been done in 0a8490c355e808c8b83261ce3d48d567f9e3396d.