Skip to content

[perf-only] rustdoc: Unconditionally enable --generate-link-to-definition and lazily typeck nested bodies with a cache#156355

Draft
fmease wants to merge 1 commit intorust-lang:mainfrom
fmease:rustdoc-ltd-lazy-cached-typck
Draft

[perf-only] rustdoc: Unconditionally enable --generate-link-to-definition and lazily typeck nested bodies with a cache#156355
fmease wants to merge 1 commit intorust-lang:mainfrom
fmease:rustdoc-ltd-lazy-cached-typck

Conversation

@fmease
Copy link
Copy Markdown
Member

@fmease fmease commented May 9, 2026

Compare with: #156349, #156348.

@fmease fmease added S-experimental Status: Ongoing experiment that does not require reviewing and won't be merged in its current state. rla-silenced Silences rust-log-analyzer postings to the PR it's added on. labels May 9, 2026
@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output. labels May 9, 2026
@fmease
Copy link
Copy Markdown
Member Author

fmease commented May 9, 2026

@bors try parent=fb0a5a5a9c892b351f34263d6d84da9dde72871a @rust-timer queue

@rust-timer

This comment has been minimized.

@rust-bors

This comment has been minimized.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label May 9, 2026
rust-bors Bot pushed a commit that referenced this pull request May 9, 2026
[perf-only] rustdoc: Unconditionally enable `--generate-link-to-definition` and lazily typeck nested bodies with a cache
Comment on lines +108 to +110
//FIXME: Allegedly, we might actually typeck code here that's cfg'ed out
// which could lead to errors getting reported which would be wild.
// Re-audit this! Do we have any tests demonstrating this?
Copy link
Copy Markdown
Member Author

@fmease fmease May 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(it doesn't affect cfg'ed out code, it just means we're type-checking bodies which we usually don't do; it means we can't document std)

View changes since the review

@fmease fmease removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label May 9, 2026
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented May 9, 2026

☀️ Try build successful (CI)
Build commit: 69577e4 (69577e4cf0bb04efb4088734375caed2632e4c70, parent: fb0a5a5a9c892b351f34263d6d84da9dde72871a)

@rust-timer

This comment has been minimized.

@rust-timer
Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (69577e4): comparison URL.

Overall result: ❌ regressions - please read:

Benchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf.

Next, please: If you can, justify the regressions found in this try perf run in writing along with @rustbot label: +perf-regression-triaged. If not, fix the regressions and do another perf run. Neutral or positive results will clear the label automatically.

@bors rollup=never
@rustbot label: -S-waiting-on-perf +perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
15.8% [2.1%, 43.6%] 19
Regressions ❌
(secondary)
13.1% [0.3%, 120.7%] 19
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 15.8% [2.1%, 43.6%] 19

Max RSS (memory usage)

Results (primary 5.4%, secondary 4.2%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
5.4% [1.5%, 14.9%] 16
Regressions ❌
(secondary)
4.2% [1.4%, 8.7%] 8
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 5.4% [1.5%, 14.9%] 16

Cycles

Results (primary 20.6%, secondary 15.8%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
20.6% [2.9%, 55.9%] 19
Regressions ❌
(secondary)
15.8% [2.2%, 102.7%] 14
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 20.6% [2.9%, 55.9%] 19

Binary size

This perf run didn't have relevant results for this metric.

Bootstrap: 497.93s -> 498.488s (0.11%)
Artifact size: 397.14 MiB -> 397.08 MiB (-0.01%)

@rustbot rustbot added perf-regression Performance regression. and removed S-waiting-on-perf Status: Waiting on a perf run to be completed. labels May 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

perf-regression Performance regression. rla-silenced Silences rust-log-analyzer postings to the PR it's added on. S-experimental Status: Ongoing experiment that does not require reviewing and won't be merged in its current state. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. T-rustdoc-frontend Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants