yngtdd / hyperspace

Distributed Bayesian Optimization
23 stars 8 forks source link

Request for new "multidrive" functionality to be implemented #31

Open karahbit opened 3 years ago

karahbit commented 3 years ago

For the purpose of performing strong scaling experiments using HyperSpace, I propose the following:

HyperSpace as it is has a method called “hyperdrive” which runs each subspace/optimization on its own single rank/core. There is also “dualdrive” which runs 2 subspaces/optimizations per rank/core.

In order to perform strong scaling, we would need to create more of this functions, e.g. quadrive, octadrive, etc (I made those names up), so we can run 4 optimizations per rank, 8 optimizations per rank, 16 optimizations per rank, etc.

Eventually, we would like to name this method something like “multipledrive”, and specify the number of optimizations we would like per rank/core as an argument.

You can see a more detailed conversation about the topic in the following issue:

Yeah, that would be possible. In the case that `num_subspaces > num_ranks`, we could place the remaining `num_subspaces - num_ranks` on ranks that already have a search space to work on. I don't think that would take much to make that happen.

Originally posted by @yngtodd in https://github.com/yngtodd/hyperspace/issues/23#issuecomment-649186116