mecfs_bio.build_system.scheduler.topological_scheduler
A scheduler that builds a dependency graph of tasks, and executes them in topological order
Classes:
Functions:
-
dependees_of_targets–Given a dependency graph of assets, find the transitive dependees of given targets
-
dependees_of_targets_from_tasks–Given a set of tasks, and a list of targets, build a minimal dependency graph containing the targets
-
dependencies_of_targets–Given a dependency graph of assets, find the transitive dependencies of given targets
-
dependencies_of_targets_from_tasks–Given a set of tasks, and a list of targets, build a minimal dependency graph containing the targets
-
get_dependency_graph_from_tasks–Convert a set of Tasks into a DAG according to their dependency structure.
-
topological–A scheduler that builds a dependency graph of tasks, and executes them in topological order.
TopologicalSchedulerSettings
Attributes:
-
print_progress(bool) –
dependees_of_targets
Given a dependency graph of assets, find the transitive dependees of given targets
Source code in mecfs_bio/build_system/scheduler/topological_scheduler.py
dependees_of_targets_from_tasks
Given a set of tasks, and a list of targets, build a minimal dependency graph containing the targets and all their transitive dependees.
Source code in mecfs_bio/build_system/scheduler/topological_scheduler.py
dependencies_of_targets
Given a dependency graph of assets, find the transitive dependencies of given targets
Source code in mecfs_bio/build_system/scheduler/topological_scheduler.py
dependencies_of_targets_from_tasks
Given a set of tasks, and a list of targets, build a minimal dependency graph containing the targets and all their transitive dependencies.
Source code in mecfs_bio/build_system/scheduler/topological_scheduler.py
get_dependency_graph_from_tasks
Convert a set of Tasks into a DAG according to their dependency structure.
Source code in mecfs_bio/build_system/scheduler/topological_scheduler.py
topological
topological(
rebuilder: Rebuilder[Info],
tasks: Tasks,
targets: Sequence[AssetId],
wf: WF,
info: Info,
meta_to_path: MetaToPath,
incremental_save_path: Path | None = None,
settings: TopologicalSchedulerSettings = TopologicalSchedulerSettings(),
) -> tuple[Mapping[AssetId, Asset], Info]
A scheduler that builds a dependency graph of tasks, and executes them in topological order. Based on Mokhov, Andrey, Neil Mitchell, and Simon Peyton Jones. "Build systems à la carte: Theory and practice." Journal of Functional Programming 30 (2020): e11.