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)
|
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) |
Właścicielem praw autorskich jest Uniwersytet Marii Curie-Skłodowskiej w Lublinie.