You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: surveys/micro/2025-06-compiler-performance.md
+13-13Lines changed: 13 additions & 13 deletions
Original file line number
Diff line number
Diff line change
@@ -148,10 +148,10 @@ Type: matrix (optional)
148
148
149
149
Commands:
150
150
151
-
-*cargo check*
152
-
-*cargo clippy*
153
-
-*cargo test*
154
-
-*cargo run* / *cargo build*
151
+
- cargo check
152
+
- cargo clippy
153
+
- cargo test
154
+
- cargo run / cargo build
155
155
156
156
Frequency:
157
157
@@ -168,18 +168,18 @@ Please select only mechanisms/workarounds that you have used at least once **pri
168
168
169
169
Type: select all that apply (optional)
170
170
171
-
- Disable (or reduce) debuginfo (e.g. set `debug = 0` in `Cargo.toml`)
172
-
- Parallel compiler frontend (pass `-Zthreads=<N>` to the compiler)
173
-
- Cranelift codegen backend (e.g. set `codegen-backend = "cranelift"` in `Cargo.toml`)
174
-
- Alternative linker (e.g. `lld`/`mold`/`wild`)
175
-
- Caching compiler wrapper (e.g. `sccache`)
176
-
- Share `target` directory amongst multiple projects (e.g. with `CARGO_TARGET_DIR`)
171
+
- Disable (or reduce) debuginfo (e.g. set *debug = 0* in Cargo.toml)
172
+
- Parallel compiler frontend (pass *-Zthreads=<N>* to the compiler)
173
+
- Cranelift codegen backend (e.g. set *codegen-backend = "cranelift"* in Cargo.toml)
174
+
- Alternative linker (e.g. lld/mold/wild)
175
+
- Caching compiler wrapper (e.g. sccache)
176
+
- Share *target* directory amongst multiple projects (e.g. with CARGO_TARGET_DIR)
177
177
- Split crates into smaller crates
178
178
- Reduce the amount of dependencies
179
179
- Disable default Cargo features of dependencies
180
180
- Create a Cargo feature to opt into building certain dependencies (or their features)
181
181
- Reduce usage of procedural macros
182
-
- Reduce usage of generic code (e.g. by converting it to `dyn Trait` instead)
182
+
- Reduce usage of generic code (e.g. by converting it to *dyn Trait* instead)
183
183
- Merge integration tests into a single binary
184
184
- Something else (open response)
185
185
@@ -195,7 +195,7 @@ Type: select all that apply (optional)
195
195
196
196
### Do you use a nightly compiler to achieve better compilation performance?
197
197
198
-
Please answer `Yes` only if you use the *nightly* toolchain primarily for achieving better compilation performance, not for other reasons.
198
+
Please answer *Yes* only if you use the *nightly* toolchain primarily for achieving better compilation performance, not for other reasons.
199
199
200
200
Type: select one (optional)
201
201
@@ -228,7 +228,7 @@ Type: select one (optional)
228
228
229
229
### Do you require unoptimized builds to have debuginfo by default?
230
230
231
-
*cargo build* with the default `dev` profile produces full debug information (debuginfo) by default. This enables debugging using a debugger, but it can also make compilation times slower (by varying amounts, e.g. 30%). In order to improve compilation performance, this debuginfo could be lowered e.g. to `line-tables-only` by default, which still enables rich backtrace information, but does not allow proper debugging.
231
+
*cargo build* with the default *dev* profile produces full debug information (debuginfo) by default. This enables debugging using a debugger, but it can also make compilation times slower (by varying amounts, e.g. 30%). In order to improve compilation performance, this debuginfo could be lowered e.g. to *line-tables-only* by default, which still enables rich backtrace information, but does not allow proper debugging.
0 commit comments