Cluster Guide

COSC 365 · Fall 2026

This guide covers the workflow common to the computing systems used in this course. Current hostnames, account instructions, and allocation information will be shared through Moodle.

Connect with SSH

Open Terminal on macOS or Windows Terminal on Windows, then connect with:

ssh your_username@cluster_hostname

The first connection may ask you to verify the host fingerprint. Confirm it against the value provided in class before accepting it.

Essential commands

Command Purpose
pwd Show the current directory
ls List files and directories
cd directory Move into a directory
cd .. Move up one directory
mkdir name Create a directory
cp source destination Copy a file
mv source destination Move or rename a file
rm file Remove a file
Warning

Linux does not provide an automatic Trash folder for terminal commands. Check a filename carefully before using rm.

Transfer files

You can transfer a file with scp:

scp program.c your_username@cluster_hostname:~/

To copy a result back to your computer, reverse the source and destination:

scp your_username@cluster_hostname:~/results.txt .

Compile and run C

gcc -Wall -Wextra -o program program.c
./program

MPI and OpenMP require additional compiler commands; those will be introduced with the relevant modules.

Submit scheduled jobs

Large systems use a scheduler so that many users can share resources fairly. In this course, you will typically submit a SLURM script with:

sbatch job.slurm

Useful commands include:

  • squeue -u your_username — view your queued and running jobs
  • scancel job_id — cancel a job
  • sacct — inspect completed jobs

Good habits

  • Keep each project in its own directory.
  • Save the compiler command and runtime parameters used for every experiment.
  • Test with small inputs before requesting substantial resources.
  • Record runtime, process/thread count, and machine details with your results.
  • Never place passwords or private keys in source files or SLURM scripts.
Back to top