Most common commands

CommandPurpose
sbatch job.shSubmit a job script
squeue -u $USERCheck your jobs
scancel JOBIDCancel a job
sinfoCheck node/partition status
module load SOFTWARELoad a software module
scontrol show job JOBIDView job details

Three ways to run work

sbatch job_script.sh                                              # batch: queued, background
srun --partition=short-40core --time=01:00:00 --ntasks=1 my_program   # direct: blocks until done
salloc --partition=short-40core --time=02:00:00 --ntasks=4        # interactive allocation

Job script template

#!/bin/bash
#SBATCH --job-name=my_job
#SBATCH --output=results_%j.txt
#SBATCH --error=errors_%j.txt
#SBATCH --time=02:00:00
#SBATCH --partition=short-40core
#SBATCH --ntasks=40
#SBATCH --cpus-per-task=1
#SBATCH --mail-type=END,FAIL
#SBATCH --mail-user=your.email@stonybrook.edu

module load intel-stack
mpirun ./executable

Job management

squeue -u $USER --format="%.10i %.12j %.8T %.10M %.6D %R"   # custom queue view
scancel -u $USER --state=pending                             # cancel all pending
sacct --starttime=2026-01-01 --format=JobID,JobName,State,ExitCode   # history

System information

sinfo -p short-40core                 # partition status
sinfo -N -l                           # all nodes, detailed
sinfo --format="%.15N %.10c %.10m %.25f %.10G %.6t"   # nodes/cores/memory/GPUs
sshare -u $USER                       # fairshare info

File transfer

scp local_file.txt username@milan.seawulf.stonybrook.edu:~/          # upload
scp -r local_directory/ username@milan.seawulf.stonybrook.edu:~/      # upload dir
rsync -avz --progress username@milan.seawulf.stonybrook.edu:~/data/ ./local_data/   # download

Rsync flags: -a archive, -v verbose, -z compress, --progress, --dry-run to test first.

Modules

module avail python
module load gcc/9.3.0 openmpi/4.1.0
module list && module purge

Storage

myquota                                        # quota info
df -h $HOME && df -h /gpfs/scratch/$USER       # disk usage
find $HOME -name "*.log" -mtime +30 -delete    # clean old logs
tar -czf archive.tar.gz directory/             # archive

Performance

sstat -j $SLURM_JOB_ID --format=AveCPU,AveRSS,MaxRSS    # while running
seff 123456                                             # efficiency after
sacct -j 123456 --format=JobID,MaxRSS,AveCPU,Elapsed,State

Troubleshooting

tail -20 slurm-123456.out          # last 20 lines of output
grep -i error slurm-123456.out     # find errors
ssh -v username@milan.seawulf.stonybrook.edu   # verbose SSH debug

Job pending? Check availability with sinfo -p your_partition and requirements with scontrol show job JOBID.

Applies to All clusters