Uniwersytet Marii Curie-Skłodowskiej w Lublinie - Centralny System Uwierzytelniania
Strona główna

Przedmiot fakultatywny 3 - Programowanie równoległe architektur wieloprocesorowych

Informacje ogólne

Kod przedmiotu: MFI-I.2L.211
Kod Erasmus / ISCED: (brak danych) / (brak danych)
Nazwa przedmiotu: Przedmiot fakultatywny 3 - Programowanie równoległe architektur wieloprocesorowych
Jednostka: Wydział Matematyki, Fizyki i Informatyki
Grupy: Przedmioty fakultatywne - informatyka 4 semestr
Strona przedmiotu: https://kampus.umcs.pl/course/view.php?id=27852
Punkty ECTS i inne: (brak) Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.

zobacz reguły punktacji
Język prowadzenia: polski
Wymagania wstępne:

1. Znajomość podstaw algorytmizacji i programowania

2. Umiejętność programowania w języku C

Godzinowe ekwiwalenty punktów ECTS:

Uczestnictwo w 30-godzinnym wykładzie: 1 ECTS

Praca własna - implementacja algorytmów, studiowanie literatury, przygotowanie do testu zaliczeniowego: 1 ECTS

Sposób weryfikacji efektów kształcenia:

Wszystkie -- test zaliczeniowy

Pełny opis:

Celem przedmiotu jest zaznajomienie słuchaczy z architekturą współczesnych systemów wieloprocesorowych i klastrów komputerowych oraz metodami konstrukcji i programowania algorytmów równoległych za pomocą wybranych interfejsów. W szczególności omówione zostaną zagadnienia:

1. Idea obliczeń równoległych

2. Architektury procesorów multicore, kart GPU i klastrów

3. Programowanie komputerów z pamięcią współdzieloną z wykorzystaniem OpenMP

4. Konstrukcja wysokowydajnych implementacji w oparciu o bibliotekę BLAS -- wykorzystanie hierarchii pamięci

5. Programowanie GPU z wykorzystaniem interfejsu CUDA

6. Implementacja algorytmów hybrydowych z wykorzystaniem CPU i GPU

7. Programowanie klastrów z wykorzystaniem interfejsu MPI

8. Metody analizy wydajności programów równoległych

9. Przenośne interfejsy OpenCL, OpenACC, SYCL

Literatura:

P. Stpiczyński, M. Brzuszek: Podstawy programowania obliczeń równoległych, Instytut Informatyki UMCS, Lublin 2011.

P. Stpiczyński: Obliczenia na hybrydowych systemach wielordzeniowych z akceleratorami GPU (w przygotowaniu, wersja elektroniczna).

A. Grama, A. Gupta, G. Karypis, V. Kumar: An introduction to parallel computing: design and analysis of algorithms, Adison-Wesley 2003.

Efekty uczenia się:

WIEDZA

W1: ma pogłębioną wiedzę dotyczącą współczesnych architektur wieloprocesorowych (K_W02)

W2: zna ogólne zasady wykorzystania wybranych interfejsów programowania równoległego przy projektowaniu implementacji algorytmów równoległych (K_W04, K_W05)

UMIEJĘTNOŚCI

U1: umie korzystać z dokumentacji interfejsów programistycznych (K_U02)

U2: umie dobrać właściwe narzędzia w trakcie projektowania oprogramowania na współczesne architektury wieloprocesorowe (K_U03, K_U04)

KOMPETENCJE

K1: jest krytyczny względem posiadanej wiedzy i ma świadomość konieczności dalszego kształcenia w oparciu o dostępną literaturę (K_K01, K_K02)

Przedmiot nie jest oferowany w żadnym z aktualnych cykli dydaktycznych.
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Marii Curie-Skłodowskiej w Lublinie.
kontakt deklaracja dostępności mapa serwisu USOSweb 7.1.2.0