aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/rl-next/build-timing-analysis.md
diff options
context:
space:
mode:
Diffstat (limited to 'doc/manual/rl-next/build-timing-analysis.md')
-rw-r--r--doc/manual/rl-next/build-timing-analysis.md22
1 files changed, 22 insertions, 0 deletions
diff --git a/doc/manual/rl-next/build-timing-analysis.md b/doc/manual/rl-next/build-timing-analysis.md
new file mode 100644
index 000000000..1bf803dab
--- /dev/null
+++ b/doc/manual/rl-next/build-timing-analysis.md
@@ -0,0 +1,22 @@
+---
+synopsis: Clang build timing analysis
+cls: 587
+category: Development
+---
+
+We now have Clang build profiling available, which generates Chrome
+tracing files for each compilation unit. To enable it, run `meson configure
+build -Dprofile-build=enabled` in a Clang stdenv (`nix develop
+.#native-clangStdenvPackages`) then rerun the compilation.
+
+If you want to make the build go faster, do a clang build with meson, then run
+`maintainers/buildtime_report.sh build`, then contemplate how to improve the
+build time.
+
+You can also look at individual object files' traces in
+<https://ui.perfetto.dev>.
+
+See [the wiki page][improving-build-times-wiki] for more details on how to do
+this.
+
+[improving-build-times-wiki]: https://wiki.lix.systems/link/8#bkmrk-page-title