Please note! Course description is confirmed for two academic years, which means that in general, e.g. Learning outcomes, assessment methods and key content stays unchanged. However, via course syllabus, it is possible to specify or change the course execution in each realization of the course, such as how the contact sessions are organized, assessment methods weighted or materials used.


The topic of this course is high-performance computing (HPC), namely heavy-duty computing on clusters or supercomputers with thousand(s) to million(s) of cores. You will learn about the main HPC architectures (tightly versus loosely coupled architectures), distributed memory and hybrid (distributed + shared memory) programming models, message-passing interface, threading, and massive parallelism with graphics processing units (GPUs). 

Credits: 5

Schedule: 25.10.2022 - 02.12.2022

Teacher in charge (valid for whole curriculum period):

Teacher in charge (applies in this implementation): Maarit Korpi-Lagg

Contact information for the course (applies in this implementation):

CEFR level (valid for whole curriculum period):

Language of instruction and studies (applies in this implementation):

Teaching language: English. Languages of study attainment: English


  • valid for whole curriculum period:

    Introduction to the current HPC landscape and supercomputing architectures; Introduction/Recap to different parallel programming models and parallel program design; Deeper dive into theory and practise of distributed memory and hybrid computing models; Message passing interface, from basics to advanced topics; Hybrid computing with MPI + openMP; Hybrid computing with GPUs with MPI + CUDA; Parallel I/O. 


Substitutes for Courses
SDG: Sustainable Development Goals

    12 Responsible Production and Consumption


Further Information
  • valid for whole curriculum period:

    Teaching Language : English

    Teaching Period : 2022-2023 Autumn II
    2023-2024 Autumn II