We've made a bunch of updates to make it much easier to understand where your performance issues come from and how to act on them. From identifying whether a span comes from your code or a dependency, to improving function visibility across runs, here's what's new!
We can now identify the origin of the code that generated the span, either if it's code written by you, a library, or the system/interpreter you're using. This is useful to quickly identify the source of the span without having to think wether or not you can optimize it directly.
The span tooltip now displays the origin of the code that generated the span, and allocation breakdown of both the total and the self time. Making it easier to identify the bottlenecks within functions.
We added a new By Origin coloring mode, which colors the flamegraph by the origin of the span. Properly separating User, Library, and System spans, making it easier to identify the source of the span.
We improved the By Function coloring mode, now the color of the function is consistent across runs and CodSpeed projects, making it easier to identify the same function across different runs.
Differential profiling is still available, now as a coloring mode, and now supports displaying dropped frames.
We also improved the root frame identification and now display all the root frames in the flamegraph allowing you to see more details and potentially multiple threads started before the measurement.