- Nazwa przedmiotu:
- Obliczenia rozproszone w klastrach i gridach
- Koordynator przedmiotu:
- prof. nzw. dr hab. Ewa Niewiadomska-Szynkiewicz, dr inż. Adam Kozakiewicz
- Status przedmiotu:
- Fakultatywny ograniczonego wyboru
- Poziom kształcenia:
- Studia II stopnia
- Program:
- Informatyka
- Grupa przedmiotów:
- Przedmioty kierunkowe
- Kod przedmiotu:
- ORKUZ
- Semestr nominalny:
- 2 / rok ak. 2016/2017
- Liczba punktów ECTS:
- 5
- Liczba godzin pracy studenta związanych z osiągnięciem efektów uczenia się:
- 110 (udział w wykładach 30 godz., wykonanie projektu 30 godz., przygotowanie do realizacji projektu 24 godz., udział w konsultacjach związanych z tematyką wykładów i realizowanym projektem 4 godz., przygotowanie do egzaminu 20 godz., udział w egzaminie 2 godz.)
- Liczba punktów ECTS na zajęciach wymagających bezpośredniego udziału nauczycieli akademickich:
- 3
- Język prowadzenia zajęć:
- polski
- Liczba punktów ECTS, którą student uzyskuje w ramach zajęć o charakterze praktycznym:
- 2
- Formy zajęć i ich wymiar w semestrze:
-
- Wykład30h
- Ćwiczenia0h
- Laboratorium0h
- Projekt30h
- Lekcje komputerowe0h
- Wymagania wstępne:
- Znajomość języków programowania (C, C++, Java)
Podstawowa znajomość programowania równoległego.
Podstawowa znajomość systemów operacyjnych.
- Limit liczby studentów:
- 30
- Cel przedmiotu:
- Celem przedmiotu jest zapoznanie studentów z technologiami gridowymi i klastrowymi oraz sposobami realizacji obliczeń rozproszonych w tych środowiskach. Prezentowane są również przykłady zastosowań klastrów, gridów i chmur obliczeniowych.
- Treści kształcenia:
- Zagadnienia podstawowe cz.1: Paradygmaty programowania równoległego. Miary oceny sprawności obliczeń równoległych i rozproszonych (współczynniki wydajności oraz przyśpieszenia, prawo Amdahla, skalowalność).
Zagadnienia podstawowe cz.2: Synchronizacja i wymiana informacji w systemach rozproszonych. Elementy kryptografii – infrastruktura klucza publicznego.
Programowanie obliczeń równoległych i rozproszonych (wątki, PVM, MPI, RMI).
Systemy klastrowe: wprowadzenie, zasady działania, współczesne klastry, podstawowe oprogramowanie. Klastrowe systemy plików. System MOSIX.
Systemy wsadowe w klastrach: PBS, LSF. Klastry ad-hoc na przykładzie JavaSpaces, JINI.
Wprowadzenie do gridów obliczeniowych – grid a klaster, definicje i cele gridów. Systemy pogranicza (klastrowo-gridowe): Sun N1 Grid Engine, Apple XGrid.
Gridy wielkiej skali cz. 1: Globus Toolkit/EDG – budowa, użytkowanie, aktualne zastosowania.
Gridy wielkiej skali cz. 2: Unicore, Condor – budowa, użytkowanie, aktualne zastosowania, współpraca z Globusem.
Inne systemy gridowe i pokrewne: NEOS i MetaNEOS, BOINC, *@home.
Programowanie aplikacji rozproszone w środowiskach gridowych – MPICH-G2, GridRPC (Ninf, NetSolve).
Gridy w zastosowaniach: EGEE i LHC, CrossGrid, eHospital.
Gridy w zastosowaniach: sterowanie falą powodziową (system wspomagania decyzji w środowisku gridowym).
- Metody oceny:
- Zdanie egzaminu (60pkt).
Wykonanie zadania projektowego (40pkt.)
Warunki zaliczenia (wynik egzaminu >30pkt, ocena projektu >20pkt.)
- Egzamin:
- tak
- Literatura:
- Praca zbiorowa pod red. A. Karbowskiego i E. Niewiadomskiej-Szynkiewicz, Podstawy Obliczeń Równoległych i Rozproszonych (pozostali autorzy: M. Kamola, K. Malinowski, M. Warchoł), Oficyna Wydawnicza PW, 2001.
Tanenbaum, A. S., Van Steen, M., Distributed Systems: Principles and Paradigms, Prentice Hall, New Jersey, 2002.
Dongarra, J., Fox, G., Gropp, W. (eds.), The Sourcebook of Parallel Computing, Morgan Kaufmann (Elsevier), 2002.
Berman, F., Fox, G., Hey, T. (eds.), Grid Computing: Making the Global Infrastructure a Reality, Wiley, 2003.
Foster, I., Kesselman, C., The Grid 2: Blueprint for a New Computing Infrastructure, Morgan Kaufmann (Elsevier), 2004.
Dokumentacja techniczna prezentowanych systemów (Internet)
- Witryna www przedmiotu:
- https://red.okno.pw.edu.pl/witryna/home.php
- Uwagi:
Efekty uczenia się
Profil ogólnoakademicki - wiedza
- Efekt OR_W1
- posiada wiedzę na temat programowania równoległego i rozproszonego oraz technik klastrowych
Weryfikacja: ocena projektów i egzaminu
Powiązane efekty kierunkowe:
K2_W03, K2_W04, K2_W05, K2_W07, K2_W09, K1_W02
Powiązane efekty obszarowe:
T2A_W04, T2A_W05, T2A_W04, T2A_W07, T2A_W03, T2A_W04, T2A_W06
Profil ogólnoakademicki - umiejętności
- Efekt OR_U1
- potrafi wykonać i zrealizować projekt systemu rozproszonego, integrując wiedzę z zakresu programowania i systemów operacyjnych
Weryfikacja: projekt i egzamin
Powiązane efekty kierunkowe:
K2_U01, K2_U03, K2_U04, K2_U05, K2_U08, K2_U09, K2_U11, K2_U13
Powiązane efekty obszarowe:
T2A_U01, T2A_U03, T2A_U05, T2A_U06, T2A_U11, T2A_U12, T2A_U15, T2A_U17
Profil ogólnoakademicki - kompetencje społeczne
- Efekt OR_K1
- potrafi zaplanować pracę, samodzielnie dobierać środki i sposoby wykonania projektu
Weryfikacja: ocena projektu, egzamin
Powiązane efekty kierunkowe:
K2_K01, K2_K03, K1_K01
Powiązane efekty obszarowe:
T2A_K06, T2A_K07, T2A_K01