Parallelization
This release provides the initial support for parallelization over trees:
- Introduces
parandinto_parmethods on theTree. These methods create parallel iterators over all nodes of the tree in arbitrary order. In other words, they are the parallel counterpart of theiterandinto_itermethods of the tree. - These implementations use direct parallelization over the underlying pinned vector, and hence, result in efficient gains in computation time. Benchmarks and examples are added to test and experiment parallel computations.
- Parallel execution is handled by the orx-parallel crate which is added as an optional dependency. Importantly note that "orx-parallel" requires "std". Therefore, for no-std use cases this features must be excluded. Since "orx-parallel" is added as a default feature, it must be excluded by
--no-default-features.