pyiron_workflow.executors.wrapped_executorlib module

class pyiron_workflow.executors.wrapped_executorlib.CacheOverride(executor: TaskSchedulerBase)[source]

Bases: BaseExecutor

override_cache_file_name: ClassVar[str] = 'executorlib_cache'
submit(fn, /, *args, **kwargs)[source]

We demand that fn be the bound-method on_run of a Lexical`+`Runnable class (a Node is, of course, the intended resolution of this demand).

exception pyiron_workflow.executors.wrapped_executorlib.DedicatedExecutorError[source]

Bases: TypeError

To raise when you try to use one of these executors outside the context of a node.

class pyiron_workflow.executors.wrapped_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.executors.wrapped_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

exception pyiron_workflow.executors.wrapped_executorlib.ProtectedResourceError[source]

Bases: ValueError

Raise when a user provides executorlib resources that we need to override.