You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We have a kludge in .travis.yml to deal with rand and its rustc compatibility. It would be nice to do better here.
We currently use rand in two ways:
Some tests use randomized input, often seeded.
Worker threads randomize which other threads they try to steal from.
We only run tests on nightly right now (barring #536), so only the use by worker threads matters for rustc compatibility in general. We use rand::weak_rng() for that, but it would probably be just fine to implement a simple PRNG locally. Then we could get rid of the compatibility kludge, and just keep rand as a dev-dependency.
FWIW, rand is also reconsidering its compatibility story in rust-random/rand#413.
The text was updated successfully, but these errors were encountered:
571: Implement our own PRNG for rayon-core r=nikomatsakis a=cuviper
Our need for randomness is very simple, just to spread the work-stealing
somewhat equally across all possible victims. Rather than worrying
about compatibility and updates to the `rand` crate, we now implement a
simple `xorshift*` generator for this. We keep `rand` only as a dev-
dependency for testing purposes.
Closes#570.
Co-authored-by: Josh Stone <cuviper@gmail.com>
We have a kludge in
.travis.yml
to deal withrand
and its rustc compatibility. It would be nice to do better here.We currently use
rand
in two ways:We only run tests on nightly right now (barring #536), so only the use by worker threads matters for rustc compatibility in general. We use
rand::weak_rng()
for that, but it would probably be just fine to implement a simple PRNG locally. Then we could get rid of the compatibility kludge, and just keeprand
as a dev-dependency.FWIW,
rand
is also reconsidering its compatibility story in rust-random/rand#413.The text was updated successfully, but these errors were encountered: