Programowanie równoległe i rozproszone

Wykłady i laboratoria, AMW, WNiUO, 2018

Zagadnienia i sposób zaliczenia:

Tematy zadań

  1. Programowanie współbieżne i równoległe. Wątki i procesy.
    • Napisać programy do sekwencyjnego i współbieżnego (równoległego) pobierania danych z internetu (np. obraz, plik tekstowy);
    • Napisać programy do sekwencyjnego i współbieżnego (równoległego) obliczania funkcji lub ciągu matematycznego (np. silnia, ciąg Fibonnaciego, liczby pierwsze);
    • Należy porównać czasy wykonań obu wersji danego programu.
  2. Komunikacja i synchronizacja między wątkami.
    • Napisać program wykorzystujący synchronizację między wątkami do realizacji określonego zadania;
    • Ww. program należy pozbawić synchronizacji wątków i zapisać pod nową nazwą;
    • Należy porównać wyniki wykonań obu programu.
  3. Web Scraping
    • Napisać program wykorzystujący ideę web-scrapingu do pobierania konkretnych danych ze strony WWW;
    • Spróbowac uruchomić ww. program na kilku wątkach, przy czym każdy wątek wykonuje inne zadanie.
  4. Zadania do samodzielnego wyboru
    • laboratoria 4 - 10 zrealizowane w wybranej technologii;
    • tematyka i materiał przesłane za pomocą Slack’a;
    • oprócz działającego programu, należy na repozytorium przesłać krótkie podsumowanie danego laboratorium.

Zasady zaliczenia przedmiotu

  1. Dowolny język do realizacji zadania.
  2. Zadanie należy zrealizować do następnych zajęć - max. 5 punktów,
    • Tydzień opóźnienia w realizacji zadania - max. 3 punkty,
    • Przekroczenie obu terminów - max. 1 punkt.
  3. Zrealizowane zadanie należy umieścić na portalu GitHub (lub BitBucket) i wysłać link do repozytorium do prowadzącego (Slack).
  4. Należy wykonać zrzuty ekranu z wynikami i również umieścić je w repozytorium.
  5. Zadanie należy zaprezentować osobiście prowadzącemu (najlepiej na bieżących lub kolejnych zajęciach).

Punkty i oceny

Liczba punktówOcena
45 - 505
39 - 444,5
34 - 384
29 - 333,5
25 - 283
0 - 242