Uniwersytet Mikołaja Kopernika w Toruniu - Centralny punkt logowania
Strona główna

Programowanie równoległe

Informacje ogólne

Kod przedmiotu: 0800-PRRWLG
Kod Erasmus / ISCED: (brak danych) / (0613) Tworzenie i analiza oprogramowania i aplikacji Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: Programowanie równoległe
Jednostka: Wydział Fizyki, Astronomii i Informatyki Stosowanej
Grupy:
Punkty ECTS i inne: 5.00 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.
Język prowadzenia: polski
Wymagania wstępne:

Znajomość C oraz C++ w stopniu średnio-zaawansowanym.

Rodzaj przedmiotu:

przedmiot obowiązkowy

Całkowity nakład pracy studenta:

Wykład - 15 h.

Laboratorium (ćwiczenia) - 45 h.

Praca indywidualna - 90 h , w tym:

- czas na przygotowanie się do zajęć: 15h

- czas potrzebny na przygotowania do pomyślnego zaliczenia przedmiotu: 75h


Efekty uczenia się - wiedza:

Student pozna klasyfikację maszyn według Flynna oraz podstawowe problemy i pojęcia występujące w programowaniu równoległym w tym prawo Amdahla, zakleszczenia etc. (informatyka: K_W01, K_W06).


Student pozna podstawowe rodzaje równoległych i rozproszonych systemów komputerowych oraz pozna metodologię tworzenia algorytmów równoległych (informatyka: K_W02) dla modeli z pamięcią rozproszoną i wspólną oraz związane z tymi podziałami różnice.


Student szczegółowo pozna m.in. biblioteki OpenMP oraz MPI oraz system kolejkujący PBS (informatyka: K_W03).

Efekty uczenia się - umiejętności:

Student potrafi tworzyć programy do obliczeń równoległych w bibliotekach OpenMP oraz MPI, dla wybranych problemów omawianych na wykładzie i ćwiczeniach (informatyka: K_U07). Potrafi analizować złożoność obliczeniową i problemy powstające w procesie tworzenia i optymalizacji programów równoległych (informatyka: K_U10).

Efekty uczenia się - kompetencje społeczne:

Student potrafi zastosować metodę naukową w skutecznym rozwiązywaniu problemów informatycznych (informatyka: K_K07).

Metody dydaktyczne eksponujące:

- pokaz

Metody dydaktyczne podające:

- wykład informacyjny (konwencjonalny)

Metody dydaktyczne poszukujące:

- laboratoryjna
- sytuacyjna

Skrócony opis:

Celem przedmiotu jest zapoznanie studentów z podstawami tworzenia oprogramowania równoległego i rozproszonego w systemach komputerowych z pamięcią rozproszoną i współdzieloną. Student problematykę i metody implementacji algorytmów równoległych w oparciu o istniejące standardy i biblioteki, ze szczególnym uwzględnieniem OpenMP oraz MPI.

Pełny opis:

• Podstawowe pojęcia: pamięć dzielona i wspólna, systemy klastrowe, hybrydowe etc

• Prawo Amdahl’a oraz taksonomia Flynna

• Blokady, zakleszczenia, hazard

• Zależności utrudniające/uniemożliwiające zrównoleglenie

• System kolejkujący PBS

• OpenMP – główne koncepcje podstawowe polecenia, cechy sposoby użycia

• Zaawansowane OpenMP

• MPI – główne koncepcje, podstawowe polecenia, cechy sposoby użycia

• Zaawansowane MPI

• Algorytmy równoległe – przykłady

Literatura:

1. G. E. Karniadakis, R. M. Kirby II, Parallel Scientific Computing in C++ and MPI: A Seamless Approach to Parallel Algorithms and their Implementation, Cambridge 2003

2. R. Chandra, R. Menon, L. Dagum and D. Kohr, Parallel Programming in OpenMP, Morgan Kaufmann, 2000

3. Strona domowa MPI http://www.mcs.anl.gov/research/projects/mpi

5. Strona domowa OpenMP http://www.openmp.org/

Metody i kryteria oceniania:

W trakcie pracowni studenci realizują kilka krótkich projektów w oparciu o wyniki których wystawiana jest ocena z części laboratoryjnej. Oceniane są bieżące postępy nad projektami, a w szczególności odpowiedzi ustne studentów na pytania dotyczące zajęć i realizowanych projektów.

Egzamin ustny obejmuje materiał z wykładu.

Zajęcia w cyklu "Semestr letni 2021/22" (zakończony)

Okres: 2022-02-21 - 2022-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 45 godzin więcej informacji
Wykład, 15 godzin więcej informacji
Koordynatorzy: Michał Zieliński
Prowadzący grup: Michał Zieliński
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Laboratorium - Zaliczenie na ocenę
Wykład - Egzamin

Zajęcia w cyklu "Semestr letni 2022/23" (zakończony)

Okres: 2023-02-20 - 2023-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 45 godzin więcej informacji
Wykład, 15 godzin więcej informacji
Koordynatorzy: Michał Zieliński
Prowadzący grup: Michał Zieliński
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Laboratorium - Zaliczenie na ocenę
Wykład - Egzamin

Zajęcia w cyklu "Semestr letni 2023/24" (w trakcie)

Okres: 2024-02-20 - 2024-09-30
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Laboratorium, 45 godzin więcej informacji
Wykład, 15 godzin więcej informacji
Koordynatorzy: Michał Zieliński
Prowadzący grup: Michał Zieliński
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Laboratorium - Zaliczenie na ocenę
Wykład - Egzamin
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Mikołaja Kopernika w Toruniu.
ul. Jurija Gagarina 11, 87-100 Toruń tel: +48 56 611-40-10 https://usosweb.umk.pl/ kontakt deklaracja dostępności USOSweb 7.0.2.0-1 (2024-03-12)