HPC Carpentry is targeted at graduate students, researchers, or industry specialists who
-
already write and run domain-specific software on "smaller" computers, and now need to scale up/out, or
-
need to learn how to use large-scale resources to run some domain-specific software which can simply not be run on smaller computers
and aims to cover the essential skills required to be able to get started with using such resources.
This lesson is intended for novices. The expectation is that participants
have maybe used a command line interface, and possibly programmed
something Python or R, but have not used the command line extensively,
and have never logged into a remote computer or used a job scheduler before.
A very novice audience might consist of people who have never done any
scripting or command line work. Therefore, this lesson covers basic skills like:
- using the command line to navigate the filesystem and manipulate files
- an introduction to writing a shell script and/or compiling software with modules
- submitting a job using a scheduling program
- best practices like good cluster citizenship and what problems are appropriate for cluster use.
Sample Learner Profile: Alice is a grad student in botany who is starting to do work in bioinformatics. She's installed and run things on her own computer, but her command line knowledge mostly consists of things she's google'd and tried, hoping they will work. She has a large set of RNAseq samples coming in and wants to be able to run them all on the campus cluster, using a common alignment program. By the end of this lesson, she should be able to log into the cluster, place her data in the appropriate location and submit a job that runs an alignment.