etree.parallel_map#
- etils.etree.parallel_map(map_fn: Callable[[...], etils.etree.tree_utils._Tout], *trees: Any | list[etils.etree.typing._T | list[Tree] | tuple[Tree, ...] | dict[str, Tree]] | tuple[etils.etree.typing._T | list[Tree] | tuple[Tree, ...] | dict[str, Tree], ...] | dict[str, etils.etree.typing._T | list[Tree] | tuple[Tree, ...] | dict[str, Tree]], num_threads: int | None = None, progress_bar: bool = False, is_leaf: collections.abc.Callable[[Any], bool] | None = None) etils.etree.tree_utils._Tout | list[etils.etree.typing._T | list[Tree] | tuple[Tree, ...] | dict[str, Tree]] | tuple[etils.etree.typing._T | list[Tree] | tuple[Tree, ...] | dict[str, Tree], ...] | dict[str, etils.etree.typing._T | list[Tree] | tuple[Tree, ...] | dict[str, Tree]] [source]#
Same as tree.map_structure but apply map_fn in parallel.
- Parameters:
map_fn – Worker function
*trees – Nested input to pass to the map_fn
num_threads – Number of workers (default to CPU count * 5)
progress_bar – If True, display a progression bar.
is_leaf – Don’t recurse into leaf if is_leaf(node) is True
- Returns:
The nested structure after map_fn has been applied.