Skip to content

Introduction

This self-service course provides a general introduction to High Performance Computing (HPC) using EPCC's national HPC service ARCHER2 as the platform for the exercises.

Details

High-performance computing (HPC) is a fundamental technology used in solving scientific problems. Many of the grand challenges of science depend on simulations and models run on HPC facilities to make progress, for example: protein folding, the search for the Higgs boson, and developing nuclear fusion.

This self-service course covers the the basic concepts underlying the drivers for HPC development, HPC hardware, software, programming models, applications, HPC usage, and application performance.This foundation will give the you ability to appreciate the relevance of HPC in your field and also equip you with the tools to start making effective use of HPC facilities yourself.

Intended learning outcomes

On completion of this course trainees should be able to explain:

  • Why HPC? - What are the drivers and motivation? who uses it?
  • HPC Hardware - Building blocks and architectures.
  • Parallel computing - Programing models and implementations.
  • Using HPC systems - Access, compilers, resource allocation and performance.

Pre-requisites

Trainees are expected to have experience using a desktop computer (Windows or Mac), but no programming, Linux, or HPC experience is necessary.

Timetable

This is a self-service course which you can work through at your own pace and in your own time. Each section contains an approximate guide to how long it would take to cover if it was delivered in traditional lecture style.

  1. Overview of EPCC
  2. Why HPC?
  3. HPC systems oview
  4. Exercise 1 - Connecting to and using a supercomputer
  5. Hardware and architecture details
  6. Parallel programming
  7. Exercise 2 - running parallel programs
  8. Parallel performance
  9. Exercise 3 - parallel performance