Interactive Computing (Open On-Demand)
Overview
Open OnDemand (OOD) is a web-based interactive interface to access and manage remote computing resources. It provides remote desktop sessions, Jupyter notebooks, and RStudio sessions.
You can find Open OnDemand at https://ood-ubuntu.scicore.unibas.ch/
Info
To access the website, you need to have a Unibas IP. Hence, using a computer connected to the university network or having your VPN activated.
Warning
Be aware that, despite being very similar, Open OnDemand in sciCORE is different from Open OnDemand in sciCORE+. For more information on the latter visit this page.
The main functionalities supported by OOD at sciCORE are:
- Launching a remote desktop (sciCORE Desktop)
- Launching a Jupyter notebook
- Launching an RStudio-Server
These are listed as “Interactive Apps”, as depicted below:
Using Open OnDemand in sciCORE
To log in you must use your UniBas credentials:
Once you access it, click the icon for “My Interactive Sessions”
Here you’ll see the list of interactive sessions that you have currently running. If it is your first time, the list will be empty.
Let us create a sciCORE Desktop session, for example. Here we can select the size of the instance that it will be reserved and assigned to the session, the duration, the need for GPUs, and if this allocation should be accounted to a special reservation (optional). After clickimg on “Launch”, OOD will submit the job to the SLURM scheduler:
This job is then sent on to the SLURM queue, and will wait for resources to be assigned to it. The page should refresh automatically once the job is running, but if it doesn’t just refresh the page in your browser.
Note
The time requested for the resource allocation to be granted depends on the resources asked, meaning that a job with request for high memory and GPU for many hours may take more time to launch (i.e., remain in status “Queued” as shown in the picture above). Thus, it is a good strategy to have an idea about the needs of the task at hand, so that resources are not wasted.
Once the job is running and it has allocated the number of cores and memory selected, you should see the following
If you click now on “Launch sciCORE Desktop” a graphical user inteface (GUI) is obtained to a desktop being run on a compute node:
This way of obtaining a remote Desktop is extremely convenient and our current recommendation for applications that need a GUI to run. From within this remove Desktop you can open a terminal, launch applications, or browse the remote file system.
OOD as an interactive batch job
OOD runs as an interactive batch job. You can see it by running the command squeue -u <username>
Image quality and rendering performance
With the default settings, the image may not perfect as it is highly compressed. But the applications should run almost as fast as when they are executed locally, despite being executed remotely.
You can control the trade-off between graphical quality and rendering performance from the OOD interface, by modifying “Compression” and “Image Quality” settings.
Once you are finished with the session you can close the corresponding tab on your browser. This will not stop the running job in the queue, though. For that, you need to delete the session under “My Interactive sessions”. If you fail to do that, the session will run and be accounted for until the allocated time is exhausted. Another way to exit the session and terminate the job is to click on the logout button on the top right of the desktop, where the username is shown.
By deleting processes that are no longer needed, resources become available back to the system to be allocated to more OOD sessions that may be requested by users. Finally, we note here that since OOD sessions run as SLURM batch jobs, they can also be deleted via the terminal command
where <job-id>
is the ID of the job that can be seen in the “My Interactive Sessions” tab.
The process to launch Jupyter notebooks and RStudio servers is the same as the one described above. Additional information regarding how to install packages in Jupyter to run custom kernels and how to import modules in R is provided by OOD directly, once the sessions are requested.
Navigating the file system via OOD
Via OOD we have access to the cluster file system as well. We can access it by clicking the button shown below:
This provides a GUI to access the file system on the cluster and perform actions (e.g., copy/move/delete) to selected files:
Tip
You also have the option on the top toolbar of opening the folder in a terminal on the compute node
Deleting files and cleaning up the trash bin
When we delete files via the OOD GUI, these files are not permanently deleted but instead moved to a trash bin folder. This is similar to how the trash bin works on most operating systems, where deleted files can be recovered until the trash bin is emptied.
Thus, the following action
does not actually delete the file from the cluster, moving it instead to the user’s trash bin folder. This folder is located at
If we permanently want to remove any files sent to the trash bin (and actually free-up space) we need to do so via a terminal. To clean up the trash bin you can use the following commands: