The dispatcher – running jobs remotely using Pyro4

class hpbandster.core.dispatcher.Dispatcher(new_result_callback, run_id='0', ping_interval=10, nameserver='localhost', nameserver_port=None, host=None, logger=None, queue_callback=None)[source]

The dispatcher is responsible for assigning tasks to free workers, report results back to the master and communicate to the nameserver.

Parameters:
  • new_result_callback (function) – function that will be called with a Job instance as argument. From the Job the result can be read and e.g. logged.
  • run_id (str) – unique run_id associated with the HPB run
  • ping_interval (int) – how often to ping for workers (in seconds)
  • nameserver (str) – address of the Pyro4 nameserver
  • nameserver_port (int) – port of Pyro4 nameserver
  • host (str) – ip (or name that resolves to that) of the network interface to use
  • logger (logging.Logger) – logger-instance for info and debug
  • queue_callback (function) – gets called with the number of workers in the pool on every update-cycle
discover_workers()[source]
job_runner()[source]
number_of_workers()[source]
register_result(id=None, result=None)[source]
run()[source]
shutdown(shutdown_workers=False)[source]
shutdown_all_workers(rediscover=False)[source]
submit_job(id, **kwargs)[source]
trigger_discover_worker()[source]
class hpbandster.core.dispatcher.Job(id, **kwargs)[source]
recreate_from_run(run)[source]
time_it(which_time)[source]
class hpbandster.core.dispatcher.Worker(name, uri)[source]
is_alive()[source]
is_busy()[source]
shutdown()[source]