Profiling the compiler
This section talks about how to profile the compiler and find out where it spends its time.
Depending on what you're trying to measure, there are several different approaches:
-
If you want to see if a PR improves or regresses compiler performance:
- The rustc-perf project makes this easy and can be triggered to run on a PR via the
@rustc-perf
bot.
- The rustc-perf project makes this easy and can be triggered to run on a PR via the
-
If you want a medium-to-high level overview of where
rustc
is spending its time:- The
-Zself-profile
flag and measureme tools offer a query-based approach to profiling. See their docs for more information.
- The
-
If you want function level performance data or even just more details than the above approaches:
- Consider using a native code profiler such as perf.