a distributed Hyperband implementation on Steroids
A simple
python3 setup.py install --user
should do. It should install the dependencies automatically.
If you want to develop on the code you could install it via
python3 setup.py develop --user
Right now, there are only three example showing how to use. You can find them in the examples
folder.
The basic components of every run are
- a
NameServer
keeping track of the master's and workers' IPs and ports - a
Master
(UsuallyBOHB
orHyperBand
) that coordinates the work - one or more
Worker
instances that perform the actual computations.
The first example shows how to do computations locally on one machine with all workers launched in separate threads. The second one is closer to a usecase on a cluster (SGE in this case). It contains launching a nameserver and distributing its credentials over a shared filesystem (often found on clusters), starting a master and multiple workers. The workers don't really perform anything interesting, but hopefully it can illustrated the usage. The third example shows how live results can be logged. Use this for long and expensive runs to inspect intermediate results.
There is no real documentation, although many methods and functions do have docstrings. There is going to be a Sphinx at some point with a bit more detail.