perf: Make stable_crate_ids reads lock-free after crate loading#158185
Conversation
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
perf: Make stable_crate_ids reads lock-free after crate loading
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (ba63cbe): comparison URL. Overall result: ✅ improvements - no action neededBenchmarking 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. @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 1.4%, secondary 1.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary -0.5%, secondary 1.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 482.01s -> 480.669s (-0.28%) |
|
r? @mu001999 rustbot has assigned @mu001999. Use Why was this reviewer chosen?The reviewer was selected based on:
|
|
LGTM, thanks! @bors r+ rollup |
…uwer Rollup of 15 pull requests Successful merges: - #153697 (Add arg splat experiment initial tuple impl) - #158360 (Various borrowck cleanups and param_env/opaque_types_defined_by query simplifications for typeck children) - #158438 (Use rigidness marker in fast_reject) - #157127 (cg_LLVM: Stop needing an alloca for volatile loads) - #158376 (Suggest `>=` for `=>` typo in closure and call argument positions) - #158185 (perf: Make stable_crate_ids reads lock-free after crate loading) - #158244 (Attribute docs `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid` ) - #158355 (Fixup the refactoring errors in #156246) - #158361 (Move `check_ffi_pure` into the attribute parser) - #158382 (Add safety section for SliceIndex::get_unchecked(mut)) - #158399 (std: truncate thread names on NetBSD) - #158418 (Eliminate double length check in `Vec::into_array`) - #158430 (Guard clone suggestion against empty obligation errors) - #158446 (Update Enzyme submodule) - #158448 (Cleanup `NumBuffer` comment and replace `ilog(10)` with `ilog10()`)
…uwer Rollup of 15 pull requests Successful merges: - #153697 (Add arg splat experiment initial tuple impl) - #158360 (Various borrowck cleanups and param_env/opaque_types_defined_by query simplifications for typeck children) - #158438 (Use rigidness marker in fast_reject) - #157127 (cg_LLVM: Stop needing an alloca for volatile loads) - #158376 (Suggest `>=` for `=>` typo in closure and call argument positions) - #158185 (perf: Make stable_crate_ids reads lock-free after crate loading) - #158244 (Attribute docs `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid` ) - #158355 (Fixup the refactoring errors in #156246) - #158361 (Move `check_ffi_pure` into the attribute parser) - #158382 (Add safety section for SliceIndex::get_unchecked(mut)) - #158399 (std: truncate thread names on NetBSD) - #158418 (Eliminate double length check in `Vec::into_array`) - #158430 (Guard clone suggestion against empty obligation errors) - #158446 (Update Enzyme submodule) - #158448 (Cleanup `NumBuffer` comment and replace `ilog(10)` with `ilog10()`)
…uwer Rollup of 15 pull requests Successful merges: - #153697 (Add arg splat experiment initial tuple impl) - #158360 (Various borrowck cleanups and param_env/opaque_types_defined_by query simplifications for typeck children) - #158438 (Use rigidness marker in fast_reject) - #157127 (cg_LLVM: Stop needing an alloca for volatile loads) - #158376 (Suggest `>=` for `=>` typo in closure and call argument positions) - #158185 (perf: Make stable_crate_ids reads lock-free after crate loading) - #158244 (Attribute docs `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid` ) - #158355 (Fixup the refactoring errors in #156246) - #158361 (Move `check_ffi_pure` into the attribute parser) - #158382 (Add safety section for SliceIndex::get_unchecked(mut)) - #158399 (std: truncate thread names on NetBSD) - #158418 (Eliminate double length check in `Vec::into_array`) - #158430 (Guard clone suggestion against empty obligation errors) - #158446 (Update Enzyme submodule) - #158448 (Cleanup `NumBuffer` comment and replace `ilog(10)` with `ilog10()`)
…uwer Rollup of 15 pull requests Successful merges: - rust-lang/rust#153697 (Add arg splat experiment initial tuple impl) - rust-lang/rust#158360 (Various borrowck cleanups and param_env/opaque_types_defined_by query simplifications for typeck children) - rust-lang/rust#158438 (Use rigidness marker in fast_reject) - rust-lang/rust#157127 (cg_LLVM: Stop needing an alloca for volatile loads) - rust-lang/rust#158376 (Suggest `>=` for `=>` typo in closure and call argument positions) - rust-lang/rust#158185 (perf: Make stable_crate_ids reads lock-free after crate loading) - rust-lang/rust#158244 (Attribute docs `deprecated` , `warn`, `allow`, `cfg`, `deny`, and `forbid` ) - rust-lang/rust#158355 (Fixup the refactoring errors in rust-lang/rust#156246) - rust-lang/rust#158361 (Move `check_ffi_pure` into the attribute parser) - rust-lang/rust#158382 (Add safety section for SliceIndex::get_unchecked(mut)) - rust-lang/rust#158399 (std: truncate thread names on NetBSD) - rust-lang/rust#158418 (Eliminate double length check in `Vec::into_array`) - rust-lang/rust#158430 (Guard clone suggestion against empty obligation errors) - rust-lang/rust#158446 (Update Enzyme submodule) - rust-lang/rust#158448 (Cleanup `NumBuffer` comment and replace `ilog(10)` with `ilog10()`)
|
@rust-timer build 9087db2 @mu001999 This should probably have been rollup=iffy because of the perf effect <3 |
This comment has been minimized.
This comment has been minimized.
Sorry, I’d thought |
|
Finished benchmarking commit (9087db2): comparison URL. Overall result: ✅ improvements - no action neededBenchmarking 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. @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (secondary -2.2%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -0.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 486.597s -> 484.816s (-0.37%) |
No description provided.