Submit jobs
To cater to users from differentvarious knowledge backgrounds with different preferences, we provide variousmultiple ways to use the cluster's resources.
SLURM is our job scheduler. Basically, whenWhen you need computing resources, you submit a job. The system will then verify your request and your quota,quota. yourYour job will be submitted to the SLURM queue when it is valid. BasedThen, based on an evaluated priority, SLURM decides when and where to execute your job will be executed.job.
We highly recommend you read the Quick Start User Guide to getfamiliarize yourself familiar with the basic design and usage of SLURM.
Besides using the command line interface to submit jobs, we have several quick jobs to get you the resources with a little learning effort. This way suits people that are more comfortable working with GUI.
Jupyter Lab
In just a few clicks, youYou can launch a Jupyter Lab server of any size in just a few clicks and connect to it without further authentication. TheWe installed the Jupyter Lab is managed in ourthe base environment. So you can use it without any preparation. But you will need to create your own Anaconda environment to install the packages you need. Log in to the console and type commands:
module load Anaconda3/2022.05
# for example we create an environment called torch
# install two packages, pip for package management and ipykernel for running our python codes
conda create -y -n torch pip ipykernel
# install pytorch into our environment from the pytorch repo
conda install -y -n torch -c pytorch pytorch
Now we are all set. Login to the web portal, locate the jobs dropdown and click Jupyter Lab. In the launcher window, selectSelect the resources you need in the launcher window, then clicksubmit enqueuethe job.form to enqueue. Head to jobs > running jobs to find your job. Click the Jupyter link to open your Jupyter Lab.
Besides Jupyter Lab, you may launch and connect any web-based tools in the same way. See the GUI launcher section for details.
VNC
Some software doesn't provide a web interface but is a desktop application. In this situation, requesting a VNC server comes in handy. Same asLike Jupyter Lab, the VNC server is runningruns in a node that provides you with the requested compute resources.
Login to the web portal, locate the jobs dropdown and click VNC. In the launcher window, selectSelect the resources you need in the launcher window, then clicksubmit enqueuethe job.form to enqueue. The resolutionportal will be automatically set forthe resolution that suits you, and you usually don't have to change it. Head to jobs > running jobs to find your job. Click the VNC link to connect with our web-based VNC client.
We suggest using containers to run your GUI applicationsapplications, so there is no need to struggle with the UI toolkits. Following is an example of running RStudio with our provided containers. RunYou may type them in your console to create a shortcut on your VNC desktop.
mkdir -p ./Desktop
echo '
[Desktop Entry]
Version=1.0
Type=Application
Name=RStudio
Comment=
Exec=singularity run --app rstudio /pfss/containers/rstudio.3.4.4.sif
Icon=xfwm4-default
Path=
Terminal=false
StartupNotify=false
' > ./Desktop/RStudio.desktop
chmod +x ./Desktop/RStudio.desktop
Container
The Jupyter Lab and VNC approaches are goodsuitable for interactive workloads. ForHowever, for non-interactive single-node jobs, you have another handy option for you. You may enqueue a container job with the quick job launcher.
Login to the web portal, locate the jobs dropdown and click Run Container. In the launcher window, select the resources you need, selectpick a built-in or a custom container from the picker,container, and type in the command and a path to store the output. Then click enqueue now to let the job scheduler help. You can then head to jobs > running jobs to check the progress.
When our built-in containers don't fit your need, you may build your own image from scratch or extend our containers. We will cover this later.
Launcher
The above three quick jobs are all leveraging the launcher. Users can modify them or even create their own quick jobs. Actually, ourOur web portal sees every .sbatch file as a launchable job. When you are browsing your group scratch folder, there may be some .sbatch files prepared by your colleague. You may enqueue them to SLURM by clicking on them, like the 3three built-in quick jobs we have talked about.discussed.
You may also find it helpful to create your own quick jobs,jobs. weWe will cover this in a later chapter.
Terminal
For experienced SLURM users, the recommended way is to just use the standard srun and sbatch commands. They give you the full power of SLURM. You can allocate multiple nodes with specific resources in one job. They are available in every login node. Please try it out in our terminal tab.