Introduction to High-Performance Computing

The first half of this workshop will cover basics of command line (in an HPC environment).

The second half of this workshop will provide an introduction and overview to the tools available on high-performance computing systems and how to use them effectively.

Prerequisites

While we cover the bash essentials, we still recommend checking out the shell-novice lesson for a better foundation in bash.

By the end of this workshop, students will know how to:

Getting Started

To get started, follow the directions in the “Setup” tab and follow any installation instructions.

Note that this is the draft HPC Carpentry release. Comments and feedback are welcome.

This is a hands on workshop, excersises will generally depend on the previous steps having been completed, so it is important to keep up!

Schedule

Setup
09:00 1. Working on a remote HPC system What is an HPC system?
How does an HPC system work?
How do I log in to a remote HPC system?
09:20 2. NeSI Filesystem Where is the best place to store my data?
How do I recover deleted files?
How do I find out how much disk space I have?
09:40 3. Accessing software via Modules How do we load and unload software packages?
10:00 Morning Break Break
10:10 4. Scheduler Fundamentals What is a scheduler and why does a cluster need one?
How do I launch a program to run on a compute node in the cluster?
How do I capture the output of a program that is run on a node in the cluster?
10:40 5. What is Parallel Computing How do we execute a task in parallel?
What benefits arise from parallel execution?
What are the limits of gains from execution in parallel?
What is the difference between implicit and explicit parallelisation.
11:00 Afternoon Break Break
11:10 6. Using resources effectively How can I review past jobs?
How can I use this knowledge to create a more accurate submission script?
11:45 7. Scaling How do we go from running a job on a small number of CPUs to a larger one.
12:20 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.