Releases: orxfun/orx-parallel
Upgraded dependencies with no_std support
Unordered iteration is revisited
Unordered iteration is revisited
- Upgraded the dependency to concurrent iterator to 1.27.0; see the release notes.
- Syntax for creating a parallel iterator from a sequential iterator is fixed.
- prior:
inputs.into_con_iter().into_par()
. - new:
inputs.iter().par()
- prior:
- Parallel reductions use transformation into
ConcurrentIterX
to have the performance benefits whenever possible. collect_x
executions use transformation intoConcurrentIterX
to have the performance benefits whenever possible.
ConIterOfIter simplification and performance
Additionally iter-map-collect benchmarks are defined.
Upgrade queue and iter deps
With these upgrades, all failing miri tests pass.
- orx-priority-queue = "1.3"
- orx-concurrent-iter = "1.25"
ConVecIter early exit memory leak issue is fixed
The fix is applied in one of the dependencies, see here: https://github.com/orxfun/orx-concurrent-iter/releases/tag/1.24.0
vec into con iter safety
Details from https://github.com/orxfun/orx-concurrent-iter/releases/tag/1.23.0:
Memory leak issue of concurrent iterators made from a vec when the iterator is not fully consumed is fixed. As the core method of batch iterators, take_slice
method now returns NoLeakIter
which iterates over all remaining elements on drop, guaranteeing that all items taken out of the original vector will be properly dropped.
Further, the underlying data structure of ConIterOfVec
is updated. Now the vec is immediately destroyed on transformation and pointer is kept instead. drop
and consuming into_seq_iter
methods are revised accordingly.
Tests are extended so that it covers all possible ways that the data can be dropped:
- as an unused concurrent iter
- as a partially progressed concurrent iter
- as a concurrent iter that is immediately transformed into a sequential iter
- as a partially progressed concurrent iter transformed into a sequential iter which is partially progressed or completed
32-bit support
Due to fix in the SplitVec https://github.com/orxfun/orx-split-vec/releases/tag/3.4.0
PinnedVec (3.3) and concurrent collections (2.3) upgraded
1.4.0 Merge pull request #37 from orxfun/PinnedVec-and-concurrent-collectio…
Underlying concurrent collections are upgraded
Dependencies to underlying concurrent collections are upgraded to versions after the major refactoring.