Git Product home page Git Product logo

hyperspace's Introduction

  • 👋 Hi, I’m @yngtdd!

hyperspace's People

Contributors

yngtodd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

hyperspace's Issues

Capability to change each hyperspace to use < a node

Is there a way to change the HyperSpace models to use less than a node per process? This will be the case for XSEDE-Bridges if we decide to run simulations, as we won't have enough nodes to spawn 16 MPI processes in which each process takes a node. Also for Summit the number of cores/node will fluctuate anywhere from 42 cores to 128 cores. Ideally we would want to have each process use the same number of cores, but we should benchmark what is the sweet spot on the optimal number of cores per process.

Request for new "multidrive" functionality to be implemented

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 #23 (comment)

Installation requirement

In addition to current packages, based on my experience some machines will also require installing cython

error importing module

When I do from hyperspace.space.skopt.mapping_space import check_dimension, fold_spaces, the hyperband module appears to have a syntax issue:

.../hyperband.py", line 69
    print(f'Rank {rank} Iteration number: {i}, Func value: {result.fun}')

AttributeError: 'NoneType' object has no attribute 'log10'

Hello,

I used to use the package

scikit-optimize 0.5.2

and it worked fine.

When I try my same experiment but using

scikit-optimize 0.7.4

I have the following error:

File "/home/karahbit/ve-radical.hpo/lib/python3.6/site-packages/skopt/space/space.py", line 234, in __init__
    self.log_base = np.log10(base)
TypeError: loop of ufunc does not support argument 0 of type NoneType which has no callable log10 method
AttributeError: 'NoneType' object has no attribute 'log10'

If I go back to 0.5.2, it stills works fine.

I am leaving this issue open here just in case.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.