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.

LEARNING OUTCOMES

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 current supercomputing architectures (NUMA), distributed memory and hybrid (distributed + shared memory) programming models, message-passing interface, threading, and massive parallelism with graphics processing units (GPUs). 

Credits: 5

Schedule: 03.09.2024 - 29.11.2024

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

CONTENT, ASSESSMENT AND WORKLOAD

Content
  • 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. 

Assessment Methods and Criteria
  • valid for whole curriculum period:

    Assessment is based on the returned exercise codes, materials, attendance and exam. Coding exercises are graded in a supercomputing environment.

Workload
  • valid for whole curriculum period:

    16 hours of contact teaching in a (flipped classroom) lecture format, 8 hours of self-study for the pre-recorded materials and example programs, 24 hours of contact teaching in coding sessions (6 sessions for tutorials on the example codes and supercomputer environment usage, 6 sessions for Q&A coding sessions for solving the exercises); 87 hours for independent work to solve the coding exercises.

DETAILS

Study Material
  • valid for whole curriculum period:

    Pre-recorded lectures, lecture slides and notes, posters produced during group work, reading materials, example programs, coding exercises, example solutions to the exercises.

Substitutes for Courses
Prerequisites
SDG: Sustainable Development Goals

    12 Responsible Production and Consumption

FURTHER INFORMATION

Further Information
  • valid for whole curriculum period:

    Teaching Language: English

    Teaching Period: 2024-2025 Autumn I - II
    2025-2026 Autumn I - II