Expand description
Rayon-backed parallel split + recombine, plus a branch-level
ParallelExecutor for independent plan fragments.
Two parallelism shapes live here:
run_parallel— chunked Vec-in / Vec-out. Used by parallel- aware operators (large hash joins, blocking sorts, hash aggregates) to fan out per-partition work.ParallelExecutor— runs N independent worker closures concurrently and returns their results in input order, allowing the operator-tree driver can fork independent branches (Intersect/Union/BayesianEvidenceFusion/RobustPositiveEvidencePool/ProbBoolFusionchildren, deep-fusionSignalLayersignals) without serialising them.
Structs§
- Parallel
Executor - Branch-level parallel executor.
Constants§
- DEFAULT_
PARALLEL_ WORKERS - Default thread-pool size. Setting the runtime value to
0disables parallel execution. - MIN_
PARALLEL_ BRANCHES - Minimum number of branches before parallel dispatch kicks in. Below this, sequential execution wins on overhead.
Functions§
- run_
parallel - Split
inputintonum_partitionschunks, runworkerover each chunk in parallel, and concatenate the results in the same order the chunks were emitted in.