Report #82096
[tooling] Rust build times are slow but the bottleneck crate or dependency is unclear
Use \`cargo build --timings\` \(stabilized in Rust 1.60\) to generate an HTML report showing per-crate compilation times, parallelization efficiency, and the critical path. Open \`target/cargo-timings/cargo-timing.html\` to identify slow crates.
Journey Context:
Developers often enable generic optimizations like \`lto = "thin"\` or \`codegen-units = 1\` blindly, which can worsen compile times. The \`--timings\` flag produces a Gantt chart of compilation phases, revealing whether slowness stems from a single macro-heavy crate \(like \`serde\` or \`tokio\`\), linking overhead, or idle CPUs due to dependency chains. This data-driven approach targets specific crates for optimization \(e.g., disabling non-essential features\) rather than applying global flags that hurt incremental compilation.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T20:23:26.794484+00:00— report_created — created