Jupyter-Kale / kale

Jupyter Interactive Workflows for High Performance Computing
Other
15 stars 3 forks source link

Proxy notebook #25

Open OliverEvans96 opened 7 years ago

OliverEvans96 commented 7 years ago

We would like to run a notebook server on a login and launch a notebook which is connected to a kernel on a compute node.

OliverEvans96 commented 7 years ago

Option 1: IPyParallel

By following http://ipyparallel.readthedocs.io/en/latest/process.html#starting-the-controller-and-engines-on-different-hosts we can do the following:

  1. Start a controller on login

  2. Copy the json config to compute

  3. Start the engine on compute, specifying the json config. The engine and controller will communicate & register.

  4. Open a notebook on login.

  5. Run:

    import ipyparallel as ipp
    rc = ipp.Client()
    %autopx

    (ipp magics docs)

  6. Any following commands will be run on compute.

Advantages:

Disadvantages:

OliverEvans96 commented 7 years ago

@shreddd said that @rcthomas has been working on spawning remote kernels for notebooks, which would be an excellent solution here depending on how far along the idea is.

mlhenderson commented 7 years ago

Not sure yet if this is compatible with existing NERSC constraints, but worth checking on: https://bitbucket.org/tdaff/remote_ikernel

OliverEvans96 commented 7 years ago

Great find! This looks like basically the idea we're going for.