Release rayon 1.8.0 / rayon-core 1.12.0 (2023-09-20)
The minimum supported rustc is now 1.63.
Added ThreadPoolBuilder::use_current_thread to use the builder thread as
part of the new thread pool. That thread does not run the pool's main loop,
but it may participate in work-stealing if it yields to rayon in some way.
Implemented FromParallelIterator<T> for Box<[T]>, Rc<[T]>, and
Arc<[T]>, as well as FromParallelIterator<Box<str>> and
ParallelExtend<Box<str>> for String.
ThreadPoolBuilder::build_scoped now uses std::thread::scope.
The default number of threads is now determined using
std::thread::available_parallelism instead of the num_cpus crate.
The internal logging facility has been removed, reducing bloat for all users.
Many smaller performance tweaks and documentation updates.
Release rayon 1.7.0 / rayon-core 1.11.0 (2023-03-03)
The minimum supported rustc is now 1.59.
Added a fallback when threading is unsupported.
The new ParallelIterator::take_any and skip_any methods work like
unordered IndexedParallelIterator::take and skip, counting items in
whatever order they are visited in parallel.
The new ParallelIterator::take_any_while and skip_any_while methods work
like unordered Iterator::take_while and skip_while, which previously had
no parallel equivalent. The "while" condition may be satisfied from anywhere
in the parallel iterator, affecting all future items regardless of position.
The new yield_now and yield_local functions will cooperatively yield
execution to Rayon, either trying to execute pending work from the entire
pool or from just the local deques of the current thread, respectively.
Release rayon-core 1.10.2 (2023-01-22)
Fixed miri-reported UB for SharedReadOnly tags protected by a call.
Release rayon 1.6.1 (2022-12-09)
Simplified par_bridge to only pull one item at a time from the iterator,
without batching. Threads that are waiting for iterator items will now block
appropriately rather than spinning CPU. (Thanks @njaard!)
Added protection against recursion in par_bridge, so iterators that also
invoke rayon will not cause mutex recursion deadlocks.
Release rayon-core 1.10.1 (2022-11-18)
Fixed a race condition with threads going to sleep while a broadcast starts.
Release rayon 1.6.0 / rayon-core 1.10.0 (2022-11-18)
The minimum supported rustc is now 1.56.
The new IndexedParallelIterator::fold_chunks and fold_chunks_with methods
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps rayon from 1.3.1 to 1.8.0.
Changelog
Sourced from rayon's changelog.
... (truncated)
Commits
21e1ae1
Release rayon 1.4.0 / rayon-core 1.8.0a0e5833
Merge #785 #790 #7919f7357b
Merge #792998f134
Removed outdated documentationc7d963a
Use crossbeam_deque::Injector instead of crossbeam_queue::SegQueue2e88929
Micro-optimize the WorkerThread::steal loop66559fe
Remove the lifetime constraint from the scope OP09428ec
Merge #746ed6a5f7
Update ci/compat-Cargo.lock96ba9ef
inline more Counter methodsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show