Till KTH:s startsida Till KTH:s startsida

Methods in High Performance Computing

Log in to your course web

You are not logged in KTH, so we cannot customize the content.

Starting June 1, 2025, it will no longer be possible to edit content on the course web, and students will no longer be added. Existing material will remain.

Read more here: The course web's sunset on June 1

DD2356 - Methods in High-Performance Computing

What is this Course About?

  • Making effective use of the most powerful parallel supercomputers for problems in science and engineering
  • Doing this requires paying attention to every part of the parallel system
  • It also requires a scientific and rigorous approach to performance

Course Goals

  • Understand the sources of performance in modern architectures
  • How to establish performance expectations
  • How to diagnose performance problems
  • How to design algorithms and applications to maximize performance potential
  • How to exploit parallelism at all levels

Intended Learning Outcomes

At the end of this course, you will be able to:

  • Describe and list HPC architecture design choices and features
  • Connect to the supercomputers, build and run codes on multicore systems and clusters
  • Use HPC tools to measure and analyze the performance of computer codes running on supercomputers
  • Design, implement and optimize a parallel engineering application for HPC systems using OpenMP and MPI

Prerequisites

  • Knowledge of Linux (Supercomputers have Linux OS)
  • Knowledge of C/C++ or Fortran - Assignments are in C/C++ though
  • Knowledge of command line editors (emacs, vi, ...)

Course Structure

  • Pre-recorded video lectures
  • In-person lectures
  • Assignments
  • Quizzes
  • Final project

Teachers