aboutsummaryrefslogtreecommitdiff
path: root/doc/manual/rl-next/build-timing-analysis.md
diff options
context:
space:
mode:
authorjade <lix@jade.fyi>2024-06-07 03:53:31 +0000
committerGerrit Code Review <gerrit@lix-systems>2024-06-07 03:53:31 +0000
commit4f94531209510c7d580e525a017ea01f18894ded (patch)
treec5b8e06f73a5fd27ed6afa53a22b9fca145c4638 /doc/manual/rl-next/build-timing-analysis.md
parentec768df0046659e75974919f5923661a29ff52c9 (diff)
parent611b1de441a54d3ed7781ca0a26b51b6cb9c45cc (diff)
Merge changes from topic "releng" into main
* changes: Add meson release note Move version to a JSON file so we can have release names Remove rl-next-dev
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