1.3 High Power Computing (HPC) at the CCB
Getting Started on the CCB
Data storage and running high demand analysis is all done on the CCB High Performance Computing (HPC) cluster. Our project space is found at /project/higgslab.
Begin an account by following the CCB instructions here.
Once you’ve got an account, following instructions here to set up the 2 Factor Authentication (2FA) - note you will need an Oxford VPN active to access these pages here
You need to email the CCB support team (help@imm.ox.ac.uk) to get access to this space, and Doug needs to be CC’d to provide approval.
Connecting to a remote server via SSH
To connect to a remote server, use the SSH command in your terminal:
ssh username@login1.molbiol.ox.ac.ukOR:
ssh username@login2.molbiol.ox.ac.ukReplace username with your actual username on the remote server. You will be prompted to enter your password and 2FA code
To move to your project directory in the terminal, use the cd command. For example:
cd /project/higgslab/your_CCB_username/Module system on the CCB
The CCB uses a module system to manage software packages.
You can load and unload software modules using the following commands:
module avail # List all available modules
module load <module_name> # Load a specific module
module unload <module_name> # Unload a specific module
module list # List currently loaded modulesFor example, to load the samtools module, you would run:
module load samtoolsIn some cases the software you want to use may have multiple versions available. You can specify the version when loading the module, for example:
module load samtools/1.10In other cases, packages may be grouped under the python module, for example deeptools is accessed from within the python module:
module load python-cbrg/currentThen you can run deeptools commands directly:
deeptools --helpMake sure to load the necessary modules before running any software on the CCB.
Help pages for the CCB
The CCB have built help pages to guide new users through getting started on the cluster. Note, to access these pages you will need an Oxford VPN active
Transferring files to/from the CCB
To transfer files between your local machine and the CCB, you can use FileZilla or the scp command in the terminal.
Using FileZilla
This is taken from the guidnace pages on the CCB site here.
- Open FileZilla and go to
File > Site Manager. - Click on “New Site” and enter the following details:
- Change the name to CCB
- Protocol: SFTP - SSH File Transfer Protocol
- Host:
login1.molbiol.ox.ac.ukorlogin2.molbiol.ox.ac.uk - Port: 22
- Logon Type: Interactive
- User: Your CCB username
- Got to Transfer settings, limit number of simultaneous connections to 1
- Click “Connect” to establish the connection.
- When reconnecting use
File > Site Manager.
Sending jobs to the CCB HPC cluster
To run analysis on the CCB HPC cluster, you will need to submit jobs using a job scheduler. The CCB uses SLURM as its job scheduler.
All the slurm steps are detailed at length on the CCB help pages here.
Basic SLURM commands
Here are some basic SLURM commands to get you started:
sbatch job_script.sh # Submit a job script
sbusy # View the job queue
squeue -u username # Check the status of your jobs
squeue --me # Check the status of your jobs (alternative)
scancel job_id # Cancel a specific job
sacct -u username -S "now-1days" -o "JobID,JobName,Start,Elapsed,State,Reason" # View job history for the last day and see why jobs failedExample SLURM job script
Here is an example of a simple SLURM job script (job_script.sh):
#!/bin/bash
# Resources:
#SBATCH --time=0-02:00:00 # DAYS-HOURS:MINUTES:SECONDS
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=4
#SBATCH --mem=10G
#SBATCH --partition=short
# Environment:
#SBATCH --export=NONE
# Email when job completes or fails
#SBATCH --mail-type=END,FAIL
# What to run:
module load rna-star
STAR --genomeDir /databank/igenomes/Drosophila_melanogaster/UCSC/dm3/Sequence/STAR/ \
--outSAMtype BAM SortedByCoordinate \
--readFilesIn C1_R1_1.fq.gz C1_R1_2.fq.gz \
--readFilesCommand zcat \
--outSAMattributes All \
--outFileNamePrefix C1_R1_ \
--limitBAMsortRAM 7000000000 \
--runThreadN 4