KMI/PAPR4 - Paradigmata programování 4

Upozornění

Vzhledem k nařízené distanční výuce na Vysokých školách budou cvičení probíhat přes MS Teams.

Seznam cvičení

  1. Úvod: pojmy, historie, scenář
  2. Základní paralelizace
  3. Semafory
  4. Semafory
  5. Producent-konzument
  6. Bariéry
  7. Problém spícího holiče
  8. Monitory
  9. Synchronizovaný vektor
  10. Future object
  11. Zasílání zpráv
  12. ThreadPool a Futures
  13. Paralelizace algortimu FCbO

Zápočet

  • Zápočet bude udělen za vypracování zadaných bodovaných úkolů na cvičeních a doplňkového úkolu.
  • Dokud bude nařízena distanční výuka tak se úkoly budou odevzdávat přes MS Teams.
  • Přehled získaných bodů naleznete zde.

Dodatečné úkoly

Studenti kteří některé úkoly odevzdali pozdě, tak dostanou přes MS Teams zadané další úkoly, jejichž počet bude záviset na počtu pozdě odevzdaných úkolů.

Zápočtový úkol

Paralelní Mergesort

Termín odevzdání: Před zkouškou

Způsob odevzdání: Přes MS Teams

Zdrojový kód opatřete komentáři

Naprogramujte paralelní Mergesort který bude k při výpočtu používat k vláken. Při řešení můžete použít cokoliv z knihoven threading a concurrent.

    
    numbers = [4, 3, 2, 6, 7, 9, 1, 5, 8]

    mergesort(numbers, 10)

    print(numbers) # -> [1, 2, 3, 4, 5, 6, 7, 8, 9]