Skip to content

Conversation

JohnTitor
Copy link
Member

Successful merges:

Failed merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

joshtriplett and others added 19 commits June 27, 2022 09:42
…_file`

These calls allow detecting whether a symlink is a file or a directory,
a distinction Windows maintains, and one important to software that
wants to do further operations on the symlink (e.g. removing it).
Co-authored-by: Guillaume Gomez <[email protected]>
No idea if this makes any perf difference, but it just seems like premature
pessimisation to use String when str will do.
…ink-types, r=thomcc

Stabilize Windows `FileTypeExt` with `is_symlink_dir` and `is_symlink_file`

These calls allow detecting whether a symlink is a file or a directory,
a distinction Windows maintains, and one important to software that
wants to do further operations on the symlink (e.g. removing it).
…gillot

Prefer visibility map parents that are not `doc(hidden)` first

Far simpler approach to rust-lang#98876.

This only fixes the case where the parent is `doc(hidden)`, not where the child is `doc(hidden)` since I don't know how to get the attrs on the import statement given a `ModChild`... I'll try to follow up with that, but this is a good first step.
…llaumeGomez

Add a clickable link to the layout section

The layout section (activated by `--show-type-layout`) is currently not linkable to (outside of chrome's link to text feature). This PR makes it linkable via `#layout`.
…s-2, r=compiler-errors

passes: port more of `check_attr` module

Continues from rust-lang#99213.

Port more diagnostics in `rustc_passes::check_attr` to using the diagnostic derive and translation machinery.

r? `@compiler-errors`
Remove dead code from cg_llvm

Found while working on rust-lang#97485
…std-build, r=jyn514

Don't build std for *-uefi targets

rust-lang#97322
…k, r=Urgau

Update pulldown-cmark version to 0.9.2 (fixes url encoding for some chars)

Fixes rust-lang#97125.

r? ``@Dylan-DPC``
rustdoc: do not allocate String when writing path full name

No idea if this makes any perf difference, but it just seems like premature pessimisation to use String when str will do.
@rustbot rustbot added T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Jul 27, 2022
@JohnTitor
Copy link
Member Author

@bors r+ rollup=never p=8

@bors
Copy link
Collaborator

bors commented Jul 27, 2022

📌 Commit 0d5bdca has been approved by JohnTitor

It is now in the queue for this repository.

@bors bors added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 27, 2022
@bors
Copy link
Collaborator

bors commented Jul 27, 2022

⌛ Testing commit 0d5bdca with merge e33cc71...

@bors
Copy link
Collaborator

bors commented Jul 27, 2022

☀️ Test successful - checks-actions
Approved by: JohnTitor
Pushing e33cc71 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jul 27, 2022
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (e33cc71): comparison url.

Instruction count

  • Primary benchmarks: 😿 relevant regressions found
  • Secondary benchmarks: 😿 relevant regressions found
mean1 max count2
Regressions 😿
(primary)
0.5% 0.8% 9
Regressions 😿
(secondary)
1.8% 2.9% 6
Improvements 🎉
(primary)
N/A N/A 0
Improvements 🎉
(secondary)
N/A N/A 0
All 😿🎉 (primary) 0.5% 0.8% 9

Max RSS (memory usage)

Results
  • Primary benchmarks: 😿 relevant regressions found
  • Secondary benchmarks: mixed results
mean1 max count2
Regressions 😿
(primary)
1.3% 1.5% 2
Regressions 😿
(secondary)
3.0% 3.2% 3
Improvements 🎉
(primary)
N/A N/A 0
Improvements 🎉
(secondary)
-2.0% -2.0% 1
All 😿🎉 (primary) 1.3% 1.5% 2

Cycles

Results
  • Primary benchmarks: 😿 relevant regression found
  • Secondary benchmarks: mixed results
mean1 max count2
Regressions 😿
(primary)
2.3% 2.3% 1
Regressions 😿
(secondary)
2.7% 3.6% 6
Improvements 🎉
(primary)
N/A N/A 0
Improvements 🎉
(secondary)
-2.7% -2.7% 1
All 😿🎉 (primary) 2.3% 2.3% 1

If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf.

Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please open an issue or create a new PR that fixes the regressions, add a comment linking to the newly created issue or PR, and then add the perf-regression-triaged label to this PR.

@rustbot label: +perf-regression

Footnotes

  1. the arithmetic mean of the percent change 2 3

  2. number of relevant changes 2 3

@rustbot rustbot added the perf-regression Performance regression. label Jul 27, 2022
@pnkfelix
Copy link
Contributor

pnkfelix commented Jul 27, 2022

  • Primary regressions were to clap (check full, check incr-full, and doc full), libc (doc full), hyper (check full, check incr-full, and doc full), image (doc full), and webrender (doc full).
  • The significance factor points mostly to the clap cases (with 4.13x, 3.25x, and 7.15x respectively to each of the scenarios I listed above for clap).
  • The detailed query data for clap check full indicates that the problem is mostly in metadata_decode_entry_item_attrs and visible_parent_map; those are the ones that had a significant time delta that end up explaining the overall time delta (0.003 + 0.003 > 0.005).
  • visible_parent_map slowdown may be due to PR Prefer visibility map parents that are not doc(hidden) first #99698.
  • The slowdown to metadata_decode_entry_Item_attrs may be due to PR passes: port more of check_attr module #99712? Hard to say.
  • The secondary regressions are all to the projection-caching benchmark, which regressed by 1.2% to 2.9% in various scenarios. That regression seems to be to due a combination of both the metadata_decode_entry_item_attrs and visible_parent_map regressions, as well as a little bit more time spent in type_op_prove_predicate, evaluate_obligation, and normalize_projection_ty. Not sure why though, I don't think those got touched by this rollup. Maybe just different execution paths from the stdlib changes that did come in with this rollup?
  • Leaving comments on both the rollup PR and the two suspect PRs from the rollup. Not marking as triaged.

@compiler-errors
Copy link
Member

Opened #99819 to test perf results. I wouldn't be surprised if #99698 is the reason for both metadata_decode_entry_item_attrs and visible_parent_map regressions.

@JohnTitor JohnTitor deleted the rollup-20i7ewx branch July 27, 2022 21:15
@compiler-errors
Copy link
Member

Bumping this again: #99819 shows that #99698 is the culprit for the regression. I can revert the original PR if needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. perf-regression Performance regression. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.