Local Executor#
Executing tasks (electrons) directly on the local machine
- class covalent.executor.executor_plugins.local.LocalExecutor(*args, **kwargs)[source]#
Local executor class that directly invokes the input function.
Methods:
execute
(function, args, kwargs, dispatch_id, …)Execute the function with the given arguments.
from_dict
(object_dict)Rehydrate a dictionary representation
get_dispatch_context
(dispatch_info)Start a context manager that will be used to access the dispatch info for the executor.
run
(function, args, kwargs, task_metadata)Abstract method to run a function in the executor.
setup
(task_metadata)Placeholder to run any executor specific tasks
teardown
(task_metadata)Placeholder to run nay executor specific cleanup/teardown actions
to_dict
()Return a JSON-serializable dictionary representation of self
write_streams_to_file
(stream_strings, …)Write the contents of stdout and stderr to respective files.
- execute(function, args, kwargs, dispatch_id, results_dir, node_id=- 1)#
Execute the function with the given arguments.
This calls the executor-specific run() method.
- Parameters
function (
Callable
) – The input python function which will be executed and whose result is ultimately returned by this function.args (
List
) – List of positional arguments to be used by the function.kwargs (
Dict
) – Dictionary of keyword arguments to be used by the function.dispatch_id (
str
) – The unique identifier of the external lattice process which is calling this function.results_dir (
str
) – The location of the results directory.node_id (
int
) – ID of the node in the transport graph which is using this executor.
- Returns
The result of the function execution.
- Return type
output
- from_dict(object_dict)#
Rehydrate a dictionary representation
- Parameters
object_dict (
dict
) – a dictionary representation returned by to_dict- Return type
- Returns
self
Instance attributes will be overwritten.
- get_dispatch_context(dispatch_info)#
Start a context manager that will be used to access the dispatch info for the executor.
- Parameters
dispatch_info (
DispatchInfo
) – The dispatch info to be used inside current context.- Return type
AbstractContextManager
[DispatchInfo
]- Returns
A context manager object that handles the dispatch info.
- run(function, args, kwargs, task_metadata)[source]#
Abstract method to run a function in the executor.
- Parameters
function (
Callable
) – The function to run in the executorargs (
List
) – List of positional arguments to be used by the functionkwargs (
Dict
) – Dictionary of keyword arguments to be used by the function.task_metadata (
Dict
) – Dictionary of metadata for the task. Current keys are dispatch_id and node_id
- Returns
The result of the function execution
- Return type
output
- setup(task_metadata)#
Placeholder to run any executor specific tasks
- Return type
Any
- teardown(task_metadata)#
Placeholder to run nay executor specific cleanup/teardown actions
- Return type
Any
- to_dict()#
Return a JSON-serializable dictionary representation of self
- Return type
dict
- write_streams_to_file(stream_strings, filepaths, dispatch_id, results_dir)#
Write the contents of stdout and stderr to respective files.
- Parameters
stream_strings (
Iterable
[str
]) – The stream_strings to be written to files.filepaths (
Iterable
[str
]) – The filepaths to be used for writing the streams.dispatch_id (
str
) – The ID of the dispatch which initiated the request.results_dir (
str
) – The location of the results directory.
- Return type
None