The average is a map legend.
Nicholas Nethercote's September compiler-performance report compares rustc results from July 29 through September 28. He reports a 4.57 percent mean wall-time reduction across 629 measurements. Of those, 555 improved and 74 regressed.[1]
That broad improvement came from different changes with different reach. An LLVM upgrade accounted for a reported 1.2 percent mean wall-time reduction. Profile-guided optimization improved most Clippy benchmarks, with the best case reaching 18 percent. Several Polonius and trait-solver changes helped narrower workloads.[1]
A compiler does not have one speed. It has a table of workloads.
Measure the layer your patch can move.
The Rust compiler development guide routes performance questions to different instruments. Use rustc-perf to check whether a compiler pull request improves or regresses the suite. Use measureme for a medium-to-high-level view of compiler time. Use native profilers for function-level detail. Use Cargo's --timings report to see the compile-time shape of a crate graph.[2]
Those tools answer different questions. A faster compiler phase may not shorten a warm incremental edit. A dependency bottleneck may dominate the crate graph. A change can lower instructions while wall time stays noisy. Pick the claim first, then use the instrument that can contradict it.
Keep AI assistance inside the evidence lane.
The September report says some optimization ideas or implementations involved language models, subject to Rust's project policy.[1] The policy allows private use and defines a controlled experiment for model-created code intended for review. It does not permit an LLM review to replace human review, and caveated uses require disclosure.[3]
Compiler optimization is a good stress test for that boundary. A generated edit can look smaller, allocate less, or use static dispatch. The accepted claim still comes from a pinned change, a matched benchmark, a regression scan, and a reviewer who understands why the result moved.
Publish the red cells too.
The rustc-perf project collects data for compiler commits and publishes it through the performance site.[4] That makes a healthy review habit possible. Keep both the summary and the distribution. Record the build mode, project, statistic, before revision, after revision, and every result that moved the wrong way.
A local compiler benchmark should follow the same discipline at smaller scale. Run enough samples to see noise. Hold the machine and workload steady. Keep correctness checks separate from timing. If the patch wins only on one project shape, say that.