Answers to common questions about the HPC
What is the HPC?
What is High Performance Computing?
WAVE HPC (High Performance Computing) is Santa Clara University’s shared high-performance computing cluster used by students, faculty, and staff for computational research and coursework. It provides access to:
-
Login nodes
-
Compute nodes (CPU & GPU)
-
High-memory resources
-
Storage arrays
-
Slurm job scheduling
-
Open OnDemand access
Because it is a shared community resource, all users must schedule jobs through Slurm for fairness.
How do I contact HPC?
The WAVE support team can be contacted via:
Access to HPC Clusters
How do I submit an account request?
How do I submit an account request?
From the documentation flow:
-
Submit an HPC account request form.
-
Your PI (Principal Investigator) must approve it. Usually your PI would be a faculty member or lead researcher who is responsible for a research project and oversees the use of resources like WAVE HPC.After approval, your account is provisioned.
-
You will receive login instructions.
If your PI does not receive the approval email, they should:
-
Check spam
-
Confirm correct email was entered
-
Contact wavesupport@scu.edu
How do I generate an SSH keypair?
From the SSH setup guide:
Step 1 – Generate Key
Open terminal (Mac/Linux/WSL):
ssh-keygen -t rsa -b 4096 -C "username@scu.edu"
-
Save to default:
~/.ssh/id_rsa -
Optional: set passphrase
This creates:
-
Private key →
id_rsa(keep secret) -
Public key →
id_rsa.pub(send to WAVE)
Step 2 – Copy Public Key
Automatic method:
ssh-copy-id username@login.wave.scu.edu
Manual method:
cat ~/.ssh/id_rsa.pub
Copy output → paste into:
~/.ssh/authorized_keys
Then fix permissions:
chmod 600 ~/.ssh/authorized_keys
Step 3 – Test Connection
ssh username@login.wave.scu.edu
If successful → no password prompt.
Available Software
Introduction into HPC Module System
WAVE uses modules to manage software environments.
Modules allow users to:
-
Load different software versions
-
Avoid conflicts
-
Customize environment
Common commands:
module avail
module load <software>
module list
Conda and Python Module
Users can:
-
Load Python module
-
Use Conda environments
Example:
module load python
conda create -n myenv python=3.x
conda activate myenv
R and Rstudio Server
-
R is available via module system.
-
RStudio Server may be accessible through Open OnDemand.
-
Allows browser-based R sessions on compute nodes.
SLURM Job Scheduler
What is Slurm, and how do I submit a Slurm Job?
What is Slurm?
Slurm (Simple Linux Utility for Resource Management) is the job scheduler used by WAVE HPC to:
-
Allocate compute resources fairly
-
Manage queues
-
Run interactive and batch jobs
It is used by ~60% of top supercomputers.
Login Node vs Compute Nodes
When you log into WAVE:
You first access a login node.
Login node:
-
Configure environment
-
Write code
-
Compile
-
Test small datasets
Note: Large jobs running on login nodes will be killed.
Compute nodes:
-
Used for heavy computation
-
Accessed via Slurm
How do I submit a Slurm job?
Create a job script:
#!/bin/bash
#SBATCH --job-name=test
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=4
#SBATCH --mem=32G
#SBATCH --time=04:00:00
./my_program
Submit with:
sbatch job.slurm
How do I submit a job to a GPU node via Slurm?
Add GPU request:
#SBATCH --gres=gpu:1
Or in interactive mode:
srun --gres=gpu:1 ...
How do I run an interactive Slurm Job
Here's the edited source code: ```html
From the documentation:
srun --partition=cmp --nodes=1 --ntasks=1 --cpus-per-task=4 --mem=32G --time=0-04:00:00 --pty /bin/bash
or:
srun -p cmp -N 1 -n 1 -c 4 --mem 32G -t 0-4 --pty /bin/bash
What this does:
-
Allocates a compute node
-
Opens interactive bash session
-
Waits if resources unavailable
When session closes then resources released.
How do I track job status?
squeue -u username
Check detailed info:
scontrol show job <jobid>
How do I see my Slurm resources?
sacct
For usage statistics.
How do I see available nodes?
sinfo
Cluster status is also visible via:
Open OnDemand → WAVE Cluster Status
Shows:
-
Jobs running
-
Jobs queued
-
CPU usage
-
GPU usage
-
Node availability
Managing Data
Managing Data
Only the following are backed up nightly:
-
/WAVE/users -
/WAVE/projects
Other directories are NOT backed up.
Do not store irreplaceable data outside backed-up directories.
Common Issues and Questions
"Permission denied (publickey)"
Causes:
-
Public key not in
~/.ssh/authorized_keys -
Wrong permissions
-
SSH agent not loaded
Fix:
chmod 600 ~/.ssh/authorized_keys
ssh-add ~/.ssh/id_rsa
How do I send my updated/new public key?
-
Generate new key.
-
Send new public key to wavesupport@scu.edu
-
Or manually update
authorized_keys.
Remove old keys after rotation.
How do I cancel a job?
scancel <jobid>
What happens if I run heavy jobs on the login node?
They will be terminated without warning.
How often should SSH keys be rotated?
Periodically for security:
-
Generate new key
-
Update authorized_keys
-
Remove old keys