Compiler Profiling Survey

I agree that we need to be careful about not trying to implement the entire tool described here before releasing anything. A slice of the functionality (no gui, just invoke cargo/rustc, print report to terminal) would be a good start. Once the architecture for that is in place it should be straightforward to add new kinds of report renderers (like flamegraphs).

3 Likes

To clarify, I think the motivation for the tool is:

  • the set of correct rustc options for difference profiles can be complex and maybe even changes from release to release
  • you need a suite of different tools to fully process the data, e.g. post-processing steps

Seems well-motivated! I feel the "curses-based UI" (as you wrote) is not necessary for a first step.

I also think that a cargo plugin (e.g., cargo self-profile) would be how I would expect to expose the functionality, though I suppose that a standalone tool is nice too. (Particularly for those not using cargo, a group which is probably over-represented in those with large programs in need of profiling.)

Anyway I like the plan in general. Creating a MVP seems good too.

1 Like

Yes, that's correct.