Wydział Informatyki | ||||||||||
Kierunek studiów | Data Science | Poziom i forma studiów | pierwszego stopnia inżynierskie stacjonarne | |||||||
Specjalność / Ścieżka dyplomowania | --- | Profil kształcenia | ogólnoakademicki | |||||||
Nazwa przedmiotu | Obliczenia równoległe | Kod przedmiotu | DS1S5OBR | |||||||
Rodzaj przedmiotu | obowiązkowy | |||||||||
Forma zajęć i liczba godzin | W | Ć | L | P | Ps | T | S | Semestr | 5 | |
30 | 30 | Punkty ECTS | 4 | |||||||
Przedmioty wprowadzające | Język programowania - obieralny (-), MLOps w technologiach AI (DS1S3MLO), Programowanie obiektowe (DS1S2POB), Uczenie maszynowe 2 (DS1S4UM2), | |||||||||
Cele przedmiotu |
Przekazanie wiedzy z zakresu programowania równoległego . Odniesienia do frameworka edukacyjnego mikrokompetencji SFIA |
|||||||||
Treści programowe |
Kompleksowe wprowadzenie do technik przetwarzania równoległego. Fundamenty architektur równoległych oraz modeli programowania. Programowanie systemów rozproszonych przy pomocy MPI oraz systemów wielordzeniowych przy pomocy OpenMP. Podstawowe algorytmy równoległe. Wstęp do programowania GPU w technologii CUDA. Wykład: Pracownia specjalistyczna: |
|||||||||
Metody dydaktyczne |
praca w grupach, metoda projektów, wykład informacyjny, |
|||||||||
Forma zaliczenia |
Wykład: zaliczenie pisemne z pytaniami otwartymi |
|||||||||
Symbol efektu uczenia się | Zakładane efekty uczenia się | Odniesienie do kierunkowych efektów uczenia się | ||||||||
EU1 | metody i techniki programowania równoległego w kontekście ML/AI, w tym modele programowania równoległego oraz różnice między przetwarzaniem rozproszonym a wielowątkowym |
DS1_W03 DS1_W20 |
||||||||
EU2 | architekturę i specyfikę obliczeń GPU, w tym organizację wątków, pamięć współdzieloną oraz ich zastosowania w optymalizacji obliczeń AI |
DS1_W04 |
||||||||
EU3 | metody optymalizacji systemów równoległych, obejmujące analizy wydajności, zarządzanie zasobami oraz strategie skalowania algorytmów |
DS1_W08 DS1_W21 |
||||||||
EU4 | implementować równoległe systemy ML/AI, korzystając z technologii takich jak MPI, OpenMP i CUDA, oraz analizować ich wydajność |
DS1_U04 DS1_U06 |
||||||||
EU5 | optymalizować wydajność obliczeń równoległych, identyfikując wąskie gardła oraz stosując zaawansowane techniki równoległości |
DS1_U16 |
||||||||
EU6 | projektować skalowalne systemy distributed ML, wykorzystując rozproszone frameworki oraz techniki model parallelism i data parallelism |
DS1_U21 |
||||||||
EU7 | programować i optymalizować aplikacje działające na systemach wielordzeniowych oraz rozproszonych, dostosowując algorytmy do specyficznych architektur sprzętowych |
DS1_U05 |
||||||||
EU8 | świadomego i odpowiedzialnego stosowania metod obliczeń równoległych, uwzględniając ich wpływ na efektywność przetwarzania danych, bezpieczeństwo systemów oraz aspekty etyczne związane z wykorzystaniem AI |
DS1_K01 DS1_K05 |
||||||||
Symbol efektu uczenia się | Sposób weryfikacji efektu uczenia się | Forma zajęć na której zachodzi weryfikacja | ||||||||
EU1 | zaliczenie opisowe i testowe | W | ||||||||
EU2 | zaliczenie opisowe i testowe | W | ||||||||
EU3 | zaliczenie opisowe i testowe | W | ||||||||
EU4 | ocena rozwiązywanych zadań problemowych, ocena projektu | Ps | ||||||||
EU5 | ocena rozwiązywanych zadań problemowych, ocena projektu | Ps | ||||||||
EU6 | ocena rozwiązywanych zadań problemowych, ocena projektu | Ps | ||||||||
EU7 | ocena rozwiązywanych zadań problemowych, ocena projektu | Ps | ||||||||
EU8 | ocena rozwiązywanych zadań problemowych, ocena projektu | Ps | ||||||||
Bilans nakładu pracy studenta (w godzinach) | Liczba godz. | |||||||||
Wyliczenie | ||||||||||
1 - udziałem w wykładach | 30 | |||||||||
2 - udziałem w innych formach zajęć | 30 | |||||||||
3 - indywidualnym wsparciem merytorycznym procesu uczenia się, udziałem w zaliczeniach organizowanych poza planem zajęć | 4 | |||||||||
4 - przygotowaniem do zaliczenia wykładu | 15 | |||||||||
5 - przygotowaniem do bieżących zajęć | 21 | |||||||||
RAZEM: | 100 | |||||||||
Wskaźniki ilościowe | GODZINY | ECTS | ||||||||
Nakład pracy studenta związany z zajęciami wymagającymi bezpośredniego udziału nauczyciela | 64 (1)+(2)+(3) |
2.6 | ||||||||
Nakład pracy studenta związany z zajęciami o charakterze praktycznym | 51 (2)+(5) |
2.0 | ||||||||
Literatura podstawowa |
1. Z. Czech, Wprowadzenie do obliczeń równoległych, Wydaw. Naukowe PWN, 2013 |
|||||||||
Literatura uzupełniająca |
1.J. Flux, GPU Mastery Series: Unlocking CUDA's Power using pyCUDA series, Independently published, 2024 |
|||||||||
Jednostka realizująca | Wydział Informatyki | Data opracowania programu | ||||||||
Program opracował(a) | dr inż. Krzysztof Jurczuk,dr hab. inż. Wojciech Kwedlo,dr inż. Daniel Reska | 2025.06.02 |