-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Optimize VecDeque::append #88717
Optimize VecDeque::append #88717
Conversation
Signed-off-by: tabokie <[email protected]>
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @m-ou-se (or someone else) soon. Please see the contribution instructions for more information. |
Is Miri silent? |
Sorry I'm new here, are you referring to running |
Signed-off-by: tabokie <[email protected]>
I think that only runs the dedicated tests in the miri test directory. You can also run all |
Passed. |
Thanks! @bors r+ |
📌 Commit a929e60 has been approved by |
Kindly ping @m-ou-se, do you know why bors hasn't attempted to merge this PR yet? 5 days of inactivity seems unusual. Is it because I appended one commit after your review? |
@bors r=m-ou-se Yes, pushing code will invalidate the approved state. |
📌 Commit cd773c3 has been approved by |
@bors rollup=never likely has some perf effects |
☀️ Test successful - checks-actions |
Finished benchmarking commit (af9b508): comparison url. Summary: This benchmark run did not return any relevant changes. If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression |
Optimize
VecDeque::append
to do unsafe copy rather than iterating through each element.On my
Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz
, the benchmark shows 37% improvements:Additional notes on the context: this is the third attempt to implement a non-trivial version of
VecDeque::append
, the last two are reverted due to unsoundness or regression, see:VecDeque.append
#52553, reverted in Fix unsoundness for VecDeque #53571Both cases are covered by existing tests.
Signed-off-by: tabokie [email protected]