Vous regardez une version antérieure (v. /display/rc/Using+Open+OnDemand) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 13) afficher la version suivante »

Open OnDemand is an open source project from Ohio Supercomputer Center. From ondemand.org: "Open OnDemand helps computational researchers and students efficiently utilize remote computing resources by making them easy to access from any device. It helps computer center staff support a wide range of clients by simplifying the user interface and experience."

With OnDemand, you can launch interactive desktop environments, or, use other online interactive apps.

Login:

  1. Go to https://ondemand.rc.rit.edu/ (note the "rc" - otherwise you'll order food instead of computing resources!)
  2. Log in with your RIT username and password and you should end up here:

File Explorer

Click Files then Home Directory. This will bring you to a basic file explorer, where you can view, edit, download and upload files in your web browser.

Shell access

Click Clusters then sporc Shell Access. Enter your password, and then use sporcsubmit as normal!

OOD Interactive Desktop

  1. Click Interactive Apps
  2. Click SPORC - OOD Interactive Desktop
  3. Then, enter the your SLURM account, the number of hours you want to keep the interactive session alive for, and the number of cores you need
  4. Click Launch
  5. Then, Launch SPORC - OOD Interactive Desktop 
  6. You can then use the interactive desktop as you would any other graphical desktop environment on Linux
  7. After you are done, click your name in the top right, and then logout
  8. Then, in the OnDemand dashboard, click Delete

Using Jupyter Notebook

  • Click Interactive Apps
  • Click OnDemand - Jupyter Notebook
  • Then, enter the your SLURM account, the number of hours you want to keep the interactive session alive for, and the number of cores you need

In the Spack command to pre-run box, enter any spack commands you want to run before the notebook app starts. Examples (note that everything after a '#' will be ignored):

<blank or starts with #> # do nothing

load <package 1> <package 2> # loading packages

load <package 1> && spack load <package 2> # loading packages, method 2

env activate <environment> # activating an environment (must contain py-notebook for this to work)

@<py-notebook version number> # change just the version of py-notebook loaded

/<py-notebook hash> # specify a spack hash for py-notebook (don't specify a hash that doesn't point to py-notebook)

Note that if you are using a customized environment, such as ENGL 581/681 or REU 2208, you won't be able to use load, @ or / - use the "OnDemand - Jupyter Notebook" environment instead

See also the Advanced Pre-Run section

Then, click Launch.

  • If you want a terminal on the machine that Jupyter is running on, click the button next to "Host:"
  • If you want to view the log, or any spack errors that occurred, click the link next to Session ID:

    then, view output.log
  • Finally, to open Jupyter Notebook, click Connect to Jupyter
  • When you are done with Jupyter, click Delete

Using VS Code Server

  1. Click Interactive Apps
  2. Click OnDemand - Jupyter Notebook
  3. Then, enter the your SLURM account, the number of hours you want to keep the interactive session alive for, the number of cores you need, and your working directory
    `
  4. In the Spack command to pre-run box, enter any spack commands you want to run before the notebook app starts. Examples (note that everything after a '#' will be ignored):

    <blank or starts with #> # do nothing

    load <package 1> <package 2> # loading packages

    load <package 1> && spack load <package 2> # loading packages, method 2

    env activate <environment> # activating an environment (must contain code-server for this to work)

    @<code-server version number> # change just the version of code-server loaded

    /<code-server hash> # specify a spack hash for code-server (don't specify a hash that doesn't point to code-server)

    See also the Advanced Spack Pre-Run section

  5. Then, click Launch
  6. If you want, you can check output.log the same way as you can in Jupyter Notebook
  7. Click Connect to VS Code to connect
  8. See https://github.com/cdr/code-server/blob/main/docs/FAQ.md#installing-an-extension if you want to install an extension
  9. When you are done, click Delete

Advanced Spack Pre-Run

The Spack command pre-run box is for running spack commands before the app launches. This is necessary for Jupyter Notebook, because it is difficult to load spack packages inside of a notebook:

In VS Code, you can get away with never closing your terminal to keep loaded packages around, but it's still useful to be able to load them beforehand.

Under the hood, the pre-run box edits a bash script that looks like this (for regular jupyter notebook):

spack load py-notebook && spack <the text that's in the spack pre-run box>

There's a bit more logic here (e.g. when the box is empty "&& spack" is omitted, or when using '@' or '/')  - but this is what happens most of the time.

You can see the generated bash script if you click the session id link, and then view script.sh


All output of this command will end up in output.log, so

will produce an output.log that starts with:


Job started with Basic Batch_connect
Script starting...
Waiting for Jupyter Notebook server to open port 43904...
TIMING - Starting wait at: Thu Jun  3 14:48:51 EDT 2021
TIMING - Starting main script at: Thu Jun  3 14:48:51 EDT 2021
0.16.0-2013-9506bb6 <-------------------------------------------- this is the version number
TIMING - Starting jupyter at: Thu Jun  3 14:49:20 EDT 2021
...

Very Advanced Spack Pre-Run

It's not recommended, but If you really must run other commands before the app starts, there's nothing stopping you from doing more than just spack commands here, such as:

--version ; echo "you can put whatever here"

in output.log:

Job started with Basic Batch_connect
Script starting...
TIMING - Starting main script at: Thu Jun  3 14:53:03 EDT 2021
Waiting for Jupyter Notebook server to open port 55326...
TIMING - Starting wait at: Thu Jun  3 14:53:03 EDT 2021
0.16.0-2013-9506bb6
you can put whatever here
TIMING - Starting jupyter at: Thu Jun  3 14:53:26 EDT 2021
...




  • Aucune étiquette