Jupyter Notebook¶
Launch Jupyter from the Open Ondemand dashboard by clicking Jupyter icon. This opens the app form that will submit a Slurm job to run a classic Jupyter Notebook server with your requested resources.
Getting started¶
Jupyter Notebook runs as a Slurm job on a compute node. Once resources are allocated, Open Ondemand starts a single‑user Notebook server for you.
To start your server, fill out the request form and submit. It may take a few minutes to start depending on cluster load. The server runs until you stop it or the time limit is reached.
Note
Closing the browser/tab does not stop the server. It keeps running on the cluster until you stop it or it times out.
Request form fields¶
When launching the Jupyter app, you will need to configure several settings:
- Account:
- If using a UT login, the default Account should be used
uthpc
. - If using an ETAIS login, choose the appropriate Account allocation under which you would like to use the resources.
- If using a UT login, the default Account should be used
- Partition:
- This determines which partition on the Rocket cluster your job will run on.
- In most cases, then 'main' partition should be used. More information about partitions.
- CPU cores:
- Select the number of CPU cores needed for your Jupyter Notebook instance.
- Libraries may use multiple cores, so consider requesting more if needed.
- Memory (GB):
- Choose the amount of memory required by the Jupyter instance.
- On you very first run, allocate more memory - 12 GB. Otherwise the job may run out of memory. On first startup the image is being built for your user.
- Typically, 4-6 GB is sufficient, but larger datasets may require more.
- python version:
- Select the desired Python version.
- Workdir:
- Specify the working directory for the Jupyter session.
- This is the directory where your notebooks and data files will be located.
- venv path:
- Specify the absolute path to a virtual environment to run the server under.
- If the path doesn’t exist, Ondemand will create a virtualenv there automatically.
- If it exists, the server uses that environment.
- Leave empty to use the default system Python.
- Number of hours:
- Since Jupyter runs within a Slurm job, you must specify a time limit.
- The job does not stop automatically when idle; it only stops when the time limit is reached.
After clicking Launch, the job is submitted to the cluster. You will be redirected to a job status screen where the job state is displayed. The Slurm job ID is shown in brackets next to Jupyter Notebook, which may be useful for debugging.
To monitor progress and see session messages:
- Open Ondemand: My Interactive Sessions → click on Session ID for your Jupyter session.
- In the session’s filesystem view, check
output.log
for real-time updates.
Important
When finished, stop your server to free resources for others and avoid unnecessary usage.
Stopping your server¶
- You can end current session from the top right corner of the Jupyter interface (Quit)
or
- Open My Interactive Sessions, find your Jupyter session, and click Delete/Stop.
Usage¶
Default kernel¶
The default Python 3 kernel is available. Exact versions can change as the system is updated.
Installing Python packages¶
Important
Don’t install into the shared system Python. Use the venv path field to create or reuse your own virtual environment under your home or project space.
- In the form, set venv path, for example
$HOME/venvs/myenv
and launch. If it doesn’t exist, it will be created automatically. - After launch, the Notebook runs under that environment. Install packages from a shell with the environment activated, then restart the kernel from the Notebook’s Kernel menu.
- In Open Ondemand, go to Clusters → rocket shell access to open a terminal on the login node.
- Activate your environment and install packages:
source ~/venvs/myenv/bin/activate pip install numpy pandas matplotlib
- Back in Notebook, use Kernel → Restart to pick up new packages.
- If you maintain several environments, you can register each as a named kernel:
source ~/venvs/myenv/bin/activate pip install ipykernel python -m ipykernel install --user --name myenv --display-name "Python (myenv)"
- In the Notebook UI: Kernel → Change kernel → choose the desired environment.
Note
R kernels are currently not provided by this app. For R workflows, use the RStudio app instead.
Debugging¶
If you are having issues starting up your Jupyter instance, check the logs from you rocket user at the path ondemand/data/sys/dashboard/batch_connect/sys/bc_jupyter/output/<session_id>/output.log
If there were any issues the error should be shown there.
If the first startup of your Jupyter instance failed, clean up the Jupyter session folder before trying again.
Problems and requests¶
This service is currently in beta and under development. If you notice problems or would like any more extensions or features, then please write to support@hpc.ut.ee .
When contacting support, include:
- The Slurm job ID and the session output (from View Output).
- What you tried and the exact error text/traceback.
FAQ¶
Session stuck on pending without error
Refresh the page. If it persists, stop the session from My Interactive Sessions and start a new one.
Can I install Jupyter Notebook extensions?
System-wide extensions are not supported. You may install user-level extensions in your venv, but they’re not guaranteed to work in this environment.
Accidentally closed the browser
The session keeps running until time limit. Log back in to ondemand.hpc.ut.ee and reconnect via My Interactive Sessions.
Server has died
Likely exceeded memory/time limits and Slurm killed it. Check View Output for OOM/time-limit messages and request more resources next time.
Can't access or stop the session from the UI
Use My Interactive Sessions to Stop/Delete. If needed, contact support with your Slurm job ID.
Clicked Launch twice
Avoid repeated clicks. If duplicate jobs start, stop the extras from My Interactive Sessions.
Additional information¶
- Jupyter Project
- Jupyter Notebook docs
- Tutorials and demos: https://jupyter.org/try