This guide shows how to log in to the UCR High-Performance Computing Center (HPCC) cluster, look at the Slurm scheduler and run a first test job. You need an HPCC account first; see Getting an HPCC account.
If your lab runs its own Slurm cluster in an Ursa Major (Google Cloud) project instead, see Ursa Major HPC clusters. The Slurm commands below work the same way there once you are logged in.
Log in
Open a terminal on your computer (Terminal on macOS or Linux, PowerShell or Windows Terminal on Windows) and connect with SSH:
ssh username@cluster.hpcc.ucr.edu
Replace username with your HPCC username. This address sends you to one of the HPCC head nodes.
- UCR users log in with their password plus Duo two-factor authentication.
- External users must use SSH keys.
The HPCC login instructions cover both methods and SSH key setup. You can also use the cluster from a web browser through Open OnDemand.
Head nodes are for submitting jobs, editing files and very small tests. Run real work on compute nodes through Slurm.
Look at the cluster
Show the partitions (queues) and the state of their nodes:
sinfo
Show jobs that are running or waiting. Add -u $USER to see only yours:
squeue
squeue -u $USER
Show details of each partition, including nodes, limits and defaults:
scontrol show partition
Show your own resource limits (an HPCC command):
slurm_limits
The HPCC Queue Policies page explains the partitions and limits.
Submit a test job
Create a file named test_job.sh with a text editor such as nano:
#!/bin/bash -l
#SBATCH --job-name=test_job
#SBATCH --partition=epyc
#SBATCH --output=test_job.out
#SBATCH --error=test_job.err
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --mem=1G
#SBATCH --time=00:05:00
hostname
sleep 10
date
The job asks for one core, 1 GB of memory and 5 minutes on the epyc partition. It prints the compute node's name, waits 10 seconds and prints the date.
Submit it:
sbatch test_job.sh
Slurm replies with the job ID, for example Submitted batch job 123456.
Monitor and manage the job
Check whether it is waiting or running:
squeue -u $USER
When it finishes, its output is in test_job.out (and any errors in test_job.err):
cat test_job.out
View accounting information such as start and end times and resources used. Replace <jobid> with your job ID:
sacct --jobs <jobid>
seff <jobid>
Cancel a running or waiting job:
scancel <jobid>
Next steps
- HPCC guide to Managing Jobs (interactive jobs, GPUs, arrays)
- Running BLAST searches on the HPCC
- Running Nextflow pipelines on the HPCC
- Questions about the HPCC: support@hpcc.ucr.edu