Case: Your project involves running MATLAB to process data.  You are tired of putting sticky notes on your lab computer that say "Job in progress.  Do not touch."  How can I use the HPC with my project

Get an account:

HPC Account Request Form 
Note: Faculty with an HPC account can request their own account and then they can sponsor accounts for students.

Request Software:

HPC Software Request Form
For this case, MATLAB is already installed on the HPC. You can see the full list of software, libraries and languages at the HPCDocs site.


 Install the global protect vpn client 

vpn.kennesaw.edu - install files for Mac and Windows

Guide: KSU Campus Network Access - Mac
Video: KSU VPN for Mac Users

Guide: KSU Campus Network Access - Windows
Video: KSU VPN for Windows Users

Note: A VPN connection is required to access the HPC for both on and off-campus users.


Configure Global Protect 

Mac: In the connection settings, add vpn-groups.kennesaw.edu to the list of portals.

In your top menu bar, use the globe icon to click ‘Connect’

Win:  In the connection settings, add vpn-groups.kennesaw.edu to the list of portals.

In you system tray, use the globe icon to click ‘Connect’


Upload your file(s):

Mac: Launch Cyberduck and ‘Open Connection’ with the SFTP protocol (Video help)

Server: hpc.kennesaw.edu Port: 22
Username: your_netid
Password: your_netid_password
There is a DUO authentication step required. (Example)
Note: Duo loop error can be fixed with a ssh config change (article)

Win: Launch Bitvise SFTP session (Video help)

Server: hpc.kennesaw.edu Port: 22
Username: your_netid
Password: your_netid_password
Note: If asked to accept a private key, click 'Yes' to trust host. 
There is a DUO authentication step required. 
     (1 - Duo push, 2 - Phone call)

Transfer your file(s) to the HPC
Drag your local matlab.m file to the right-hand window where you find your HPC home 
Note: Configure Bitvise to authenticate with "publickey+kbdi" in authentication settings.


Start an SSH session:

Mac:  Launch Terminal.app

At the prompt, enter ‘ssh your_netid@hpc.kennesaw.edu’
There is a DUO authentication step required. (Example)

Win: Launch Power Shell

At the prompt, enter ‘ssh your_netid@hpc.kennesaw.edu’
08/22: There is a DUO authentication step required. (Example)


Test your code or process:

Once logged in, your session will begin on a login node

NOTE: Do not test your code or run cpu intensive applications on the login node.

Use the ‘interact’ script to reserve a 1 compute node for your own use for an hour.

$ interact   

To request more time (8 hour max) and more nodes (Ex. 2)

$ interact -t 8:00:00 -n 2

For all the options, $ interact -help

Note: once your testing is complete, exit your interact session before submitting your qsub reservation.

$ exit


Build a simple submission script (my_script.pbs):

#!/bin/bash
#PBS -N MATLAB_Job
#PBS -l nodes=1:ppn=1
#PBS -l walltime=01:00:00
#PBS -m abe
#PBS -M your_netid@kennesaw.edu

JOBID=`echo #PBS_JOBID | cut -f1 -d.`

module load MATLAB

# Create a temp workdir under scratch
mkdir -p ${HOME}/scratch/matlab
export PBS_MATLAB_WORKDIR=$( mktemp -d -p ${HOME}/scratch/matlab workdir_XXXXXXXXXX )

# This is where your run your MATLAB code
matlab -nodisplay -nosplash -logfile ${FILE}.log -r "run ${FILE}"

exit 0


Submit your job submission script

$ qsub my_script.pbs -vFILE=${PWD}/matlab.m

Note: you pass the name of your MATLAB file to the job scheduler
This is the same file you uploaded previously.


Review your results

If your results are usually displayed within the MATLAB app, that output will be captured in a file in your home directory.  Example: JobID 10234 with create a outpufile called MATLAB_Job.o10234

You can use the cat command to view the output files

$ cat MATLAB_Job.o10234


Exit the SSH session.

$exit

Note: you can exit the ssh session with your job still running.  The output file will be created whether you are logged in or not.   You should receive an email when the job completes, so you can log back in to get the results later.