University of Warsaw - Central Authentication System
Strona główna

High performance computing

General data

Course ID: 1000-218bHPC
Erasmus code / ISCED: 11.3 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (0612) Database and network design and administration The ISCED (International Standard Classification of Education) code has been designed by UNESCO.
Course title: High performance computing
Name in Polish: Obliczenia superkomputerowe
Organizational unit: Faculty of Mathematics, Informatics, and Mechanics
Course groups: (in Polish) Przedmioty obieralne na studiach drugiego stopnia na kierunku bioinformatyka
Elective courses for Computer Science
Elective courses: concurrent and distributed programming
ECTS credit allocation (and other scores): 6.00 Basic information on ECTS credits allocation principles:
  • the annual hourly workload of the student’s work required to achieve the expected learning outcomes for a given stage is 1500-1800h, corresponding to 60 ECTS;
  • the student’s weekly hourly workload is 45 h;
  • 1 ECTS point corresponds to 25-30 hours of student work needed to achieve the assumed learning outcomes;
  • weekly student workload necessary to achieve the assumed learning outcomes allows to obtain 1.5 ECTS;
  • work required to pass the course, which has been assigned 3 ECTS, constitutes 10% of the semester student load.

view allocation of credits
Language: English
Type of course:

obligatory courses

Short description:

High Performance Computing (HPC) has a significant impact on the modern world, from numerical weather prediction to long-term climate simulations, or from in-silico protein folding models to simulations of galaxies. A modern supercomputer is composed of thousands of nodes, each equipped with multi-core processors and, often, thousands of cores on accelerators. These platforms need a new, distinct perspective on design and implementation of algorithms because of their huge scale, heterogeneity (accelerators and CPUs), relatively frequent failures and performance differences of orders of magnitude between the local and the remote memory.

Full description:

The goal of the course is to introduce the fundamental concepts (models, algorithms, and programming techniques) suitable for modern supercomputers. We will start with the parallel (shared-memory) systems. We will program accelerators in the massively-parallel model; and many-core processors in the task-based model. We will introduce the PRAM model to measure theoretical efficiency of the algorithms. We will then study distributed systems. We will show a message-passing programming model (MPI). To estimate efficiency, we will present the latency-bandwidth model. We will also show some fundamental approaches, models and algorithms for work partitioning, planning and scheduling: independent tasks, dependency graphs and divisible load.

Bibliography:

- scientific papers (details given during the lectures)

- Ben-Ari “Principles of Concurrent and Distributed Programming”

- Casanova, Legrand, Robert ""Parallel Algorithms""

- Kirk, Hwu “Programming Massively Parallel Processors”

- Cormen, Leiserson, Rivest, Stein ""Introduction to Algorithms"", 1st edition (PRAM), 3rd edition (Cilk)

- Drozdowski, „Scheduling for Parallel Processing”

Learning outcomes: (in Polish)

Wiedza

1. Zna techniki synchronizacji procesów i komunikacji międzyprocesowej w scentralizowanym i rozproszonym modelu programu współbieżnego [K_W04].

2. Zna algorytmy wzajemnego wykluczania i uzgadniania w systemach rozproszonych [K_W05].

3. Zna różne architektury stosowane do wysokowydajnego przetwarzania komputerowego.

Umiejętności

1. Potrafi zastosować mechanizmy synchronizacji procesów i wątków w wybranych technologiach w zależności od architektury i możliwości konkretnego komputera [K_U06].

2. Posługuje się nowoczesnymi technologiami rozpraszania i zrównoleglania obliczeń [K_U08].

3. Ma umiejętności językowe w zakresie informatyki zgodne z wymaganiami określonymi dla poziomu B2+ Europejskiego Systemu Opisu Kształcenia Językowego, w szczególności: identyfikuje główne i poboczne tematy wykładów, pogadanek, debat akademickich, dyskusji, czyta ze zrozumieniem i krytycznie analizuje teksty akademickie, zabiera głos w dyskusji lub debacie naukowej, streszcza ustnie informacje, wyniki badań, opinie i argumenty autora zawarte w tekście naukowym [K_U14].

4. Umie określać wydajność przetwarzania w zależności od architektury oraz zastosowanej topologii sieci.

5. Programowanie obliczeń równoległych dla różnych architektur.

6. Ocenianie efektywności algorytmów do przetwarzania równoległego.

Assessment methods and assessment criteria:

- 2 projects

- participation in the class

- final exam

doctoral students: the student will be additionally asked to read a selected recent research paper on HPC (and their research area, if applicable); a chat with a lecturer about the article will be a part of the final exam.

Classes in period "Summer semester 2023/24" (in progress)

Time span: 2024-02-19 - 2024-06-16
Selected timetable range:
Navigate to timetable
Type of class:
Lab, 30 hours more information
Lecture, 30 hours more information
Coordinators: Krzysztof Rządca
Group instructors: Adrian Naruszko, Krzysztof Rządca
Students list: (inaccessible to you)
Examination: Examination

Classes in period "Summer semester 2024/25" (future)

Time span: 2025-02-17 - 2025-06-08
Selected timetable range:
Navigate to timetable
Type of class:
Lab, 30 hours more information
Lecture, 30 hours more information
Coordinators: Krzysztof Rządca
Group instructors: Tomasz Kanas, Adrian Naruszko, Krzysztof Rządca
Students list: (inaccessible to you)
Examination: Examination
Course descriptions are protected by copyright.
Copyright by University of Warsaw.
Krakowskie Przedmieście 26/28
00-927 Warszawa
tel: +48 22 55 20 000 https://uw.edu.pl/
contact accessibility statement USOSweb 7.0.3.0 (2024-03-22)