hpcflow.sdk.core.environment.ExecutableInstance#

class hpcflow.sdk.core.environment.ExecutableInstance(parallel_mode, num_cores, command)#

Bases: JSONLike

A particular instance of an executable that can support some mode of operation.

Parameters:
  • parallel_mode (str) – What parallel mode is supported by this executable instance.

  • num_cores (NumCores | int | dict[str, int]) – The number of cores supported by this executable instance.

  • command (str) – The actual command to use for this executable instance.

Methods

from_json_like

Make an instance of this class from JSON (or YAML) data.

from_spec

Construct an instance from a specification dictionary.

to_dict

Serialize this object as a dictionary.

to_json_like

Serialize this object as an object structure that can be trivially converted to JSON.

Attributes

parallel_mode

What parallel mode is supported by this executable instance.

num_cores

The number of cores supported by this executable instance.

command

The actual command to use for this executable instance.

command: str#

The actual command to use for this executable instance.

classmethod from_json_like(json_like, shared_data=None)#

Make an instance of this class from JSON (or YAML) data.

Parameters:
  • json_like (Union[Dict, List]) – The data to deserialise.

  • shared_data (Optional[Dict[str, ObjectList]]) – Shared context data.

Return type:

The deserialised object.

classmethod from_spec(spec)#

Construct an instance from a specification dictionary.

num_cores: Any#

The number of cores supported by this executable instance.

parallel_mode: str#

What parallel mode is supported by this executable instance.

to_dict()#

Serialize this object as a dictionary.

to_json_like(dct=None, shared_data=None, exclude=None, path=None)#

Serialize this object as an object structure that can be trivially converted to JSON. Note that YAML can also be produced from the result of this method; it just requires a different final serialization step.