mlos_bench.environments.remote.host_env

Remote host Environment.

Classes

HostEnv

Remote host environment.

Module Contents

class mlos_bench.environments.remote.host_env.HostEnv(*, name: str, config: dict, global_config: dict | None = None, tunables: mlos_bench.tunables.tunable_groups.TunableGroups | None = None, service: mlos_bench.services.base_service.Service | None = None)[source]

Bases: mlos_bench.environments.base_environment.Environment

Remote host environment.

Create a new environment for host operations.

Parameters:
  • name (str) – Human-readable name of the environment.

  • config (dict) – Free-format dictionary that contains the benchmark environment configuration. Each config must have at least the “tunable_params” and the “const_args” sections.

  • global_config (dict) – Free-format dictionary of global parameters (e.g., security credentials) to be mixed in into the “const_args” section of the local config.

  • tunables (TunableGroups) – A collection of tunable parameters for all environments.

  • service (Service) – An optional service object (e.g., providing methods to deploy or reboot a VM/host, etc.).

setup(tunables: mlos_bench.tunables.tunable_groups.TunableGroups, global_config: dict | None = None) bool[source]

Check if host is ready. (Re)provision and start it, if necessary.

Parameters:
  • tunables (TunableGroups) – A collection of groups of tunable parameters along with the parameters’ values. HostEnv tunables are variable parameters that, together with the HostEnv configuration, are sufficient to provision and start a Host.

  • global_config (dict) – Free-format dictionary of global parameters of the environment that are not used in the optimization process.

Returns:

is_success – True if operation is successful, false otherwise.

Return type:

bool

teardown() None[source]

Shut down the Host and release it.

Return type:

None