Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proxy notebook #25

Open
OliverEvans96 opened this issue Aug 9, 2017 · 4 comments
Open

Proxy notebook #25

OliverEvans96 opened this issue Aug 9, 2017 · 4 comments
Assignees

Comments

@OliverEvans96
Copy link
Collaborator

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
Copy link
Collaborator Author

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)

  1. Any following commands will be run on compute.

Advantages:

  • We can do it

Disadvantages:

  • login must have an ip address visible to compute. This is fine on a cluster, but if login is a laptop behind a router, then we'll have to be more creative.
  • Since the kernel is remote, there are a few jupyter artifacts
    • Out[0:{num}]: will be prepended to every output (where {num} is the output number on compute)
    • No tab completion since the kernel running on login has no variables defined or modules imported.

@OliverEvans96
Copy link
Collaborator Author

@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
Copy link
Collaborator

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

@OliverEvans96
Copy link
Collaborator Author

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants