Convert ShardedHashMap to use hashbrown::HashTable#137701
Merged
bors merged 1 commit intorust-lang:masterfrom Mar 12, 2025
Merged
Convert ShardedHashMap to use hashbrown::HashTable#137701bors merged 1 commit intorust-lang:masterfrom
ShardedHashMap to use hashbrown::HashTable#137701bors merged 1 commit intorust-lang:masterfrom
Conversation
Collaborator
Collaborator
|
These commits modify the If this was unintentional then you should revert the changes before this PR is merged. Some changes occurred to the CTFE / Miri interpreter cc @rust-lang/miri, @rust-lang/wg-const-eval |
This comment was marked as resolved.
This comment was marked as resolved.
b437273 to
547eaca
Compare
fmease
approved these changes
Mar 10, 2025
Member
Collaborator
Collaborator
Member
|
cc some members of WG-parallel-rustc for visibility @SparrowLii @bjorn3 since triagebot ping groups failed on me (and since there's no proper GH team) |
jieyouxu
added a commit
to jieyouxu/rust
that referenced
this pull request
Mar 10, 2025
Convert `ShardedHashMap` to use `hashbrown::HashTable` The `hash_raw_entry` feature (rust-lang#56167) has finished fcp-close, so the compiler should stop using it to allow its removal. Several `Sharded` maps were using raw entries to avoid re-hashing between shard and map lookup, and we can do that with `hashbrown::HashTable` instead.
jieyouxu
added a commit
to jieyouxu/rust
that referenced
this pull request
Mar 10, 2025
Convert `ShardedHashMap` to use `hashbrown::HashTable` The `hash_raw_entry` feature (rust-lang#56167) has finished fcp-close, so the compiler should stop using it to allow its removal. Several `Sharded` maps were using raw entries to avoid re-hashing between shard and map lookup, and we can do that with `hashbrown::HashTable` instead.
jieyouxu
reviewed
Mar 11, 2025
Member
|
Missing @bors r- |
Member
Author
|
Oh, I see, the import was removed by #138040. I'll rebase and fix it. |
The `hash_raw_entry` feature has finished fcp-close, so the compiler should stop using it to allow its removal. Several `Sharded` maps were using raw entries to avoid re-hashing between shard and map lookup, and we can do that with `hashbrown::HashTable` instead.
547eaca to
3b0c258
Compare
Member
Author
|
PR checks are passing, so we should be good to go! @bors r=fmease |
Collaborator
jieyouxu
added a commit
to jieyouxu/rust
that referenced
this pull request
Mar 11, 2025
Convert `ShardedHashMap` to use `hashbrown::HashTable` The `hash_raw_entry` feature (rust-lang#56167) has finished fcp-close, so the compiler should stop using it to allow its removal. Several `Sharded` maps were using raw entries to avoid re-hashing between shard and map lookup, and we can do that with `hashbrown::HashTable` instead.
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
Mar 11, 2025
Rollup of 18 pull requests Successful merges: - rust-lang#126856 (remove deprecated tool `rls`) - rust-lang#137314 (change definitely unproductive cycles to error) - rust-lang#137504 (Move methods from Map to TyCtxt, part 4.) - rust-lang#137701 (Convert `ShardedHashMap` to use `hashbrown::HashTable`) - rust-lang#137967 ([AIX] Fix hangs during testing) - rust-lang#138002 (Disable CFI for weakly linked syscalls) - rust-lang#138052 (strip `-Wlinker-messages` wrappers from `rust-lld` rmake test) - rust-lang#138063 (Improve `-Zunpretty=hir` for parsed attrs) - rust-lang#138109 (make precise capturing args in rustdoc Json typed) - rust-lang#138147 (Add maintainers for powerpc64le-unknown-linux-gnu) - rust-lang#138245 (stabilize `ci_rustc_if_unchanged_logic` test for local environments) - rust-lang#138296 (Remove `AdtFlags::IS_ANONYMOUS` and `Copy`/`Clone` condition for anonymous ADT) - rust-lang#138300 (add tracking issue for unqualified_local_imports) - rust-lang#138307 (Allow specifying glob patterns for try jobs) - rust-lang#138313 (Update books) - rust-lang#138315 (use next_back() instead of last() on DoubleEndedIterator) - rust-lang#138318 (Rustdoc: remove a bunch of `@ts-expect-error` from main.js) - rust-lang#138330 (Remove unnecessary `[lints.rust]` sections.) Failed merges: - rust-lang#137147 (Add exclude to config.toml) r? `@ghost` `@rustbot` modify labels: rollup
jieyouxu
added a commit
to jieyouxu/rust
that referenced
this pull request
Mar 12, 2025
Convert `ShardedHashMap` to use `hashbrown::HashTable` The `hash_raw_entry` feature (rust-lang#56167) has finished fcp-close, so the compiler should stop using it to allow its removal. Several `Sharded` maps were using raw entries to avoid re-hashing between shard and map lookup, and we can do that with `hashbrown::HashTable` instead.
jieyouxu
added a commit
to jieyouxu/rust
that referenced
this pull request
Mar 12, 2025
Convert `ShardedHashMap` to use `hashbrown::HashTable` The `hash_raw_entry` feature (rust-lang#56167) has finished fcp-close, so the compiler should stop using it to allow its removal. Several `Sharded` maps were using raw entries to avoid re-hashing between shard and map lookup, and we can do that with `hashbrown::HashTable` instead.
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
Mar 12, 2025
Rollup of 25 pull requests Successful merges: - rust-lang#134076 (Stabilize `std::io::ErrorKind::InvalidFilename`) - rust-lang#136842 (Add libstd support for Trusty targets) - rust-lang#137314 (change definitely unproductive cycles to error) - rust-lang#137504 (Move methods from Map to TyCtxt, part 4.) - rust-lang#137621 (Add std support to cygwin target) - rust-lang#137701 (Convert `ShardedHashMap` to use `hashbrown::HashTable`) - rust-lang#138109 (make precise capturing args in rustdoc Json typed) - rust-lang#138161 (Add PeekMut::refresh) - rust-lang#138162 (Update the standard library to Rust 2024) - rust-lang#138174 (Elaborate trait assumption in `receiver_is_dispatchable`) - rust-lang#138175 (Support rmeta inputs for --crate-type=bin --emit=obj) - rust-lang#138269 (uefi: fs: Implement FileType, FilePermissions and FileAttr) - rust-lang#138313 (Update books) - rust-lang#138318 (Rustdoc: remove a bunch of `@ts-expect-error` from main.js) - rust-lang#138331 (Use `RUSTC_LINT_FLAGS` more) - rust-lang#138333 (Rebuild llvm spuriously less frequently) - rust-lang#138343 (Enable `f16` tests for `powf`) - rust-lang#138345 (Some autodiff cleanups) - rust-lang#138346 (naked functions: on windows emit `.endef` without the symbol name) - rust-lang#138347 (Reduce `kw::Empty` usage, part 2) - rust-lang#138360 (Fix false-positive in `expr_or_init` and in the `invalid_from_utf8` lint) - rust-lang#138371 (Update compiletest's `has_asm_support` to match rustc) - rust-lang#138372 (Refactor `pick2_mut` & `pick3_mut` to use `get_disjoint_mut`) - rust-lang#138376 (Item-related cleanups) - rust-lang#138377 (Remove unnecessary lifetime from `PatInfo`.) r? `@ghost` `@rustbot` modify labels: rollup
matthiaskrgr
added a commit
to matthiaskrgr/rust
that referenced
this pull request
Mar 12, 2025
Convert `ShardedHashMap` to use `hashbrown::HashTable` The `hash_raw_entry` feature (rust-lang#56167) has finished fcp-close, so the compiler should stop using it to allow its removal. Several `Sharded` maps were using raw entries to avoid re-hashing between shard and map lookup, and we can do that with `hashbrown::HashTable` instead.
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
Mar 12, 2025
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#137314 (change definitely unproductive cycles to error) - rust-lang#137701 (Convert `ShardedHashMap` to use `hashbrown::HashTable`) - rust-lang#138269 (uefi: fs: Implement FileType, FilePermissions and FileAttr) - rust-lang#138331 (Use `RUSTC_LINT_FLAGS` more) - rust-lang#138345 (Some autodiff cleanups) - rust-lang#138387 (intrinsics: remove unnecessary leading underscore from argument names) - rust-lang#138389 (use `expect` instead of `allow`) - rust-lang#138390 (fix incorrect tracing log) r? `@ghost` `@rustbot` modify labels: rollup
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
Mar 12, 2025
…iaskrgr Rollup of 7 pull requests Successful merges: - rust-lang#137314 (change definitely unproductive cycles to error) - rust-lang#137701 (Convert `ShardedHashMap` to use `hashbrown::HashTable`) - rust-lang#138269 (uefi: fs: Implement FileType, FilePermissions and FileAttr) - rust-lang#138331 (Use `RUSTC_LINT_FLAGS` more) - rust-lang#138345 (Some autodiff cleanups) - rust-lang#138387 (intrinsics: remove unnecessary leading underscore from argument names) - rust-lang#138390 (fix incorrect tracing log) r? `@ghost` `@rustbot` modify labels: rollup
rust-timer
added a commit
to rust-lang-ci/rust
that referenced
this pull request
Mar 12, 2025
Rollup merge of rust-lang#137701 - cuviper:sharded-hashtable, r=fmease Convert `ShardedHashMap` to use `hashbrown::HashTable` The `hash_raw_entry` feature (rust-lang#56167) has finished fcp-close, so the compiler should stop using it to allow its removal. Several `Sharded` maps were using raw entries to avoid re-hashing between shard and map lookup, and we can do that with `hashbrown::HashTable` instead.
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
Mar 21, 2025
Try using std's hashbrown copy Just testing if this affects performance. It may relate to rust-lang#138708, rust-lang#137701 and rust-lang#115747.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The
hash_raw_entryfeature (#56167) has finished fcp-close, so the compilershould stop using it to allow its removal. Several
Shardedmaps wereusing raw entries to avoid re-hashing between shard and map lookup, and
we can do that with
hashbrown::HashTableinstead.