Correctly set and restore the TLV and remove the Cargo feature for it#2
Closed
Zoxc wants to merge 9 commits intorust-lang:rustcfrom
Closed
Correctly set and restore the TLV and remove the Cargo feature for it#2Zoxc wants to merge 9 commits intorust-lang:rustcfrom
Zoxc wants to merge 9 commits intorust-lang:rustcfrom
Conversation
eddyb
reviewed
Apr 22, 2019
|
|
||
| [features] | ||
| default = ["tlv"] | ||
| tlv = [] |
There was a problem hiding this comment.
Isn't removing a feature backwards-incompatible?
Author
There was a problem hiding this comment.
Probably, rustc-rayon doesn't provide any guarantees though.
There was a problem hiding this comment.
Still, might as well bump to "0.2.0" I would think?
There was a problem hiding this comment.
(At least that's what I usually do)
nikomatsakis
approved these changes
Apr 24, 2019
|
I'm 👍 to merge but would prefer to set version to |
da4fbb8 to
4b574ba
Compare
Author
|
Merged and published |
nikomatsakis
pushed a commit
that referenced
this pull request
Oct 7, 2019
These adaptors consume may many elements before deferring to a base folder's fullness checks, and so they need to be performed manually. For the `filter`s, there's no way to do it manually (rayon-rs#632), so the specialisations just have to be removed. For `fold` and `find_any` this can be done with a `take_while`. This extends the octillion tests to confirm this behaviour. This makes a program like the following slightly slower compared to the direct `consume_iter` without a check, but it's still faster than the non-specialized form. ``` extern crate test; extern crate rayon; use rayon::prelude::*; fn main() { let count = (0..std::u32::MAX) .into_par_iter() .map(test::black_box) .find_any(|_| test::black_box(false)); println!("{:?}", count); } ``` ``` $ hyperfine ./find-original ./find-no-check ./find-check Benchmark #1: ./find-original Time (mean ± σ): 627.6 ms ± 25.7 ms [User: 7.130 s, System: 0.014 s] Range (min … max): 588.4 ms … 656.4 ms 10 runs Benchmark #2: ./find-no-check Time (mean ± σ): 481.5 ms ± 10.8 ms [User: 5.415 s, System: 0.013 s] Range (min … max): 468.9 ms … 498.2 ms 10 runs Benchmark #3: ./find-check Time (mean ± σ): 562.3 ms ± 11.8 ms [User: 6.363 s, System: 0.013 s] Range (min … max): 542.5 ms … 578.2 ms 10 runs ``` (find-original = without specialization, find-no-check = custom `consume_iter` without `take_while`, find-check = this commit)
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.
For some reason I didn't think to restore the TLV after running other Rayon jobs.
r? @cuviper / @nikomatsakis