Programowanie równoległe i rozproszone
Informacje ogólne
Kod przedmiotu: | 639B-INxxx-MEP-PRRUZ |
Kod Erasmus / ISCED: | (brak danych) / (brak danych) |
Nazwa przedmiotu: | Programowanie równoległe i rozproszone |
Jednostka: | Ośrodek Kształcenia na Odległość |
Grupy: |
( Przedmioty razem )--mgr. za. o.-EITI ( Zastosowania informatyki )-Automatyka i Robotyka-mgr. za. o.-MECH ( Zastosowania informatyki )-Informatyka-mgr. za. o.-EITI ( Zastosowania informatyki )-Informatyka-mgr. za. o.-WE |
Punkty ECTS i inne: |
5.00
|
Język prowadzenia: | polski |
Kod wydziałowy: | PRRUZ |
Numer wersji: | 2 |
Skrócony opis: |
Celem przedmiotu jest przedstawienie podstawowych wiadomości na temat prowadzenia obliczeń wektorowych, równoległych i rozproszonych na komputerach wielordzeniowych (wykorzystujących ewentualnie rozszerzenia strumieniowe SSE, AVX, karty graficzne), superkomputerach, a także w klastrach i gridach. W dalszej części wykładu omówione będą przykłady zastosowania obliczeń równoległych do rozwiązywania złożonych zadań analizy numerycznej - klasycznych oraz związanych z Internetem. |
Pełny opis: |
1. Zagadnienia podstawowe: klasyfikacja i architektura komputerów równoległych; procesory wielordzeniowe o strukturze symetrycznej i asymetrycznej, dodatkowe jednostki wykonawcze SSE, AVX, Altivec oraz GPU; obliczenia: wektorowe, współbieżne, równoległe, rozproszone, strumieniowe; rodzaje oprogramowania realizującego równoległość, istotne paradygmaty i modele programowania równoległego. 2. Miary efektywności obliczeń równoległych (współczynniki przyśpieszenia oraz wydajności, prawa Amdahla i Gustafsona-Barsisa, sprawność i skalowalność). 3. Zagadnienia synchronizacji i wymiany informacji w obliczeniach równoległych, podstawowe mechanizmy: zamek, semafor, monitor, bariera klasyczna i dwuczęściowa, zmienne warunków, komunikaty (synchroniczne, asynchroniczne, blokujące, nieblokujące, buforowane, itd.). 4. Wektoryzacja obliczeń we współczesnych komputerach opartych na architekturze x86, sposób wykorzystania jednostek wykonawczych SSE, AVX Podstawowe informacje o obliczeniach ogólnego przeznaczenia wykorzystujących karty graficzne (GPGPU), pojęcia strumienia i jądra; najważniejsze cechy środowisk oprogramowania: CUDA, OpenACC, OpenMP od wersji 4. 5. Elementy programowania na maszynach z pamięcią wspólną, narzędzia: klasyczne narzędzia systemu UNIX, programowania wielowątkowego (wątki POSIX, wątki w językach Java oraz C#), język dyrektyw OpenMP. 6. Elementy programowania na maszynach z pamięcią lokalną oraz w sieciach komputerowych, klastrach i gridach; narzędzia: środowisko MPI, rodzina narzędzi RPC. Sposoby realizacji rozproszonych systemów z pamięcią wspólną: UPC. 7. Algorytmy synchroniczne: podstawowe algorytmy algebry liniowej w wersji równoległej, rozwiązywanie układów równań nieliniowych, równoległe metody optymalizacji. 8. Algorytmy całkowicie lub częściowo asynchroniczne: założenia, zbieżność, zastosowanie do rozwiązywania dużych układów równań liniowych i nieliniowych, optymalizacji statycznej, routingu, szeregowania linków w wyszukiwarkach, itp. |
Literatura: |
1. Praca zbiorowa pod red. A. Karbowskiego i E. Niewiadomskiej-Szynkiewicz, Programowanie Równoległe i Rozproszone (pozostali autorzy: J. Błaszczyk, M. Kamola, B. Kubica, K. Malinowski, M. Warchoł), Oficyna Wydawnicza PW, 2009. 2. Bertsekas D.P. i Tsitsiklis J.N.,Parallel and Distributed Computation: Numerical Methods, Athena Scientific, 1997. 3. Zbigniew J. Czech Wprowadzenie do obliczeń równoległych (wydanie II), Wydawnictwo Naukowe PWN, 2013 |
Efekty uczenia się: |
Wiedza: Podstawowe informacje o możliwościach zwiększenia efektywności działania programów dzięki wykorzystaniu rozwiązań jakich dostarcza współczesna technologia, których podstawą są procesory wielordzeniowe, ich wektorowe jednostki wykonawcze, sieć oraz akceleratory oparte na kartach graficznych. Umiejętności: Po kursie PRR student nabędzie umiejętności oceny w jakim stopniu można poprawić efektywność (czas działania) aplikacji oraz przy pomocy jakich środków umożliwiających wektoryzację, zrównoleglenie lub rozproszenie obliczeń. Kompetencje społeczne: Znajomość zależnych od nowoczesnych technologii informacyjnych sposobów zwiększenia efektywności działania firm, instytucji, organizacji, itp. |
Zajęcia w cyklu "rok akademicki 2023/2024 - sem. zimowy" (zakończony)
Okres: | 2023-10-01 - 2024-02-18 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Projekt, 30 godzin
Wykład, 30 godzin
|
|
Koordynatorzy: | Andrzej Karbowski | |
Prowadzący grup: | Andrzej Karbowski, Bartłomiej Kubica | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Egzamin |
Zajęcia w cyklu "rok akademicki 2022/2023 - sem. zimowy" (zakończony)
Okres: | 2022-10-01 - 2023-02-19 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Projekt, 30 godzin
Wykład, 30 godzin
|
|
Koordynatorzy: | Andrzej Karbowski | |
Prowadzący grup: | Andrzej Karbowski, Bartłomiej Kubica | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Egzamin |
Zajęcia w cyklu "rok akademicki 2021/2022 - sem. zimowy" (zakończony)
Okres: | 2021-10-01 - 2022-02-22 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Projekt, 30 godzin
Wykład, 30 godzin
|
|
Koordynatorzy: | Andrzej Karbowski | |
Prowadzący grup: | Andrzej Karbowski, Bartłomiej Kubica | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Egzamin |
Zajęcia w cyklu "rok akademicki 2020/2021 - sem. zimowy" (zakończony)
Okres: | 2020-10-01 - 2021-02-19 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Projekt, 30 godzin
Wykład, 30 godzin
|
|
Koordynatorzy: | Andrzej Karbowski, Bartłomiej Kubica | |
Prowadzący grup: | Andrzej Karbowski, Bartłomiej Kubica | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Egzamin |
Zajęcia w cyklu "rok akademicki 2019/2020 - sem. letni" (zakończony)
Okres: | 2020-02-22 - 2020-09-30 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Projekt, 30 godzin
Wykład, 30 godzin
|
|
Koordynatorzy: | Andrzej Karbowski | |
Prowadzący grup: | (brak danych) | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Egzamin |
Zajęcia w cyklu "rok akademicki 2019/2020 - sem. zimowy" (zakończony)
Okres: | 2019-10-01 - 2020-02-21 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Projekt, 30 godzin
Wykład, 30 godzin
|
|
Koordynatorzy: | Andrzej Karbowski | |
Prowadzący grup: | (brak danych) | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Ocena łączna | |
Jednostka realizująca: | 639000 - Studia Zaoczne na Odległość |
Zajęcia w cyklu "rok akademicki 2018/2019 - sem. letni" (zakończony)
Okres: | 2019-02-18 - 2019-09-30 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Projekt, 30 godzin
Wykład, 30 godzin
|
|
Koordynatorzy: | (brak danych) | |
Prowadzący grup: | (brak danych) | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Ocena łączna |
Zajęcia w cyklu "rok akademicki 2018/2019 - sem. zimowy" (zakończony)
Okres: | 2018-10-01 - 2019-02-17 |
Przejdź do planu
PN WT ŚR CZ PT |
Typ zajęć: |
Ćwiczenia, 45 godzin, 80 miejsc
Wykład, 30 godzin, 80 miejsc
|
|
Koordynatorzy: | Andrzej Karbowski | |
Prowadzący grup: | (brak danych) | |
Lista studentów: | (nie masz dostępu) | |
Zaliczenie: | Egzamin | |
Jednostka realizująca: | 639000 - Studia Zaoczne na Odległość |
Właścicielem praw autorskich jest Politechnika Warszawska.