Assignments and projects will include components that require execution and evaluation on distributed computing resources available to Clemson students
- 280 nodes with NVIDIA K20 GPUs (2 per node)
- 138 nodes with NVIDIA K40 GPUs (2 per node)
- 40 nodes with NVIDIA P100 GPUs (2 per node)
Who uses Palmetto?
Node naming scheme
qsub -I - l [resource specification]
qsub [PBS script containing resource specification and job description]
Further reading on Palmetto resource request from command line:
https://www.palmetto.clemson.edu/palmetto/pages/userguide.html#submitting
qsub [PBS script containing resource specification and job description]
qsub
can only be called from the headnode ssh login001
from Jupyter terminalPBS Script format
#PBS
will be intepreted by the PBS scheduler#PBS
will be executed as bash commands#!/bin/bash
#PBS -N cpsc4770
#PBS -l select=1:ncpus=4:mpiprocs=4:mem=8gb
#PBS -l walltime=00:50:00
#PBS -j oe
Program execution instructions go here ...
PBS flags
PBS environmental variables
qsub
was calledWhat happens after a job is submitted?
qsub
is executed, you will see a job ID return to the command lineqstat -anu <yourusername>
qdel <job ID>
1) Log into Palmetto via JupyterHub interface
2) Request (default parameters):
- 1 chunk
- 1 cpu core per chunk
- 1gb of memory per chunk
- no GPU
- 30 minutes walltime
- workq
3) Via Jupyter, create a directory call cpsc4770-6770
4) Inside cpsc4770-6770, use Jupyter's editor to create a file named gethostname.py containing the following lines:
#gethostname.py
import socket
print ("hello world from host %s" % (socket.gethostname()))
5) Execute gethostname.py from the Jupyter terminal
python gethostname.py
6) Execute qstat
and compare the outcome with results from gethostname.py
qstat -anu <username>