pyiron_workflow.executorlib module
Simple wrappers around executorlib executors, which are exclusively intended to submit the core execution routine, and which override executorlib caching directory with the run configuration directory and cache file roots with the lexical path.
This makes it possible to recover executorlib-cached data between python processes (e.g. shutting down your notebook and coming back), but the onus is on the _user_ to specify the right terminal input data to correspond with this run configuration directory – we don’t do any data hashing. I.e., make a fresh run config directory for each iteration of input data where the caching executors are being leveraged.
- class pyiron_workflow.executorlib.CacheOverride(executor: TaskSchedulerBase)[source]
Bases:
BaseExecutor- cache_directory: ClassVar[str] = 'executorlib_cache'
- exception pyiron_workflow.executorlib.DedicatedExecutorError[source]
Bases:
TypeErrorTo raise when you try to use one of these executors outside the context of a node.
- class pyiron_workflow.executorlib.NodeSingleExecutor(max_workers: int | None = None, cache_directory: str | None = None, max_cores: int | None = None, resource_dict: dict | None = None, hostname_localhost: bool | None = None, block_allocation: bool = False, init_function: Callable | None = None, disable_dependencies: bool = False, refresh_rate: float = 0.01, plot_dependency_graph: bool = False, plot_dependency_graph_filename: str | None = None, export_workflow_filename: str | None = None, log_obj_size: bool = False, wait: bool = True, restart_limit: int = 0, openmpi_oversubscribe: bool = False)[source]
Bases:
CacheOverride,SingleNodeExecutor
- class pyiron_workflow.executorlib.NodeSlurmExecutor(max_workers: int | None = None, cache_directory: str | None = None, max_cores: int | None = None, resource_dict: dict | None = None, pysqa_config_directory: str | None = None, pmi_mode: str | None = None, hostname_localhost: bool | None = None, block_allocation: bool = False, init_function: Callable | None = None, disable_dependencies: bool = False, refresh_rate: float = 0.01, plot_dependency_graph: bool = False, plot_dependency_graph_filename: str | None = None, export_workflow_filename: str | None = None, log_obj_size: bool = False, wait: bool = True, openmpi_oversubscribe: bool = False)[source]
Bases:
CacheOverride,SlurmClusterExecutor