| > How much can the frontend really impact compile times? Your question is addressed in this blog post - Faster compilation with the parallel front-end in nightly (https://blog.rust-lang.org/2023/11/09/parallel-rustc.html). One the example shown there: - Serial took 10.2 seconds in the frontend and 6.2 seconds in the backend. - Parallel tool 5.9 seconds (-42%) and 5.3 seconds (-14.5%). So to answer your question, parallelising the frontend can have a substantial impact. You are right that frontend is only a subset of the total compilation time - backend and linking time matter too. Happily, that's something that's being worked on too! There is an alternate backend called cranelift (https://bjorn3.github.io/2024/11/14/progress-report-nov-2024...) that compiles faster than LLVM, at the cost of producing slower binaries. That's a good trade-off for debug builds. And there's work on changing the default linker to lld (https://blog.rust-lang.org/2024/05/17/enabling-rust-lld-on-l...). We may see all 3 efforts land in the next year :) |