UIN3031 Nesekvenční výpočty

Filozoficko-přírodovědecká fakulta v Opavě
léto 2025
Rozsah
3/0/0. 5 kr. Ukončení: zk.
Vyučující
doc. Ing. Petr Sosík, Dr. (přednášející)
Garance
doc. Ing. Petr Sosík, Dr.
Ústav informatiky – Filozoficko-přírodovědecká fakulta v Opavě
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Cíle předmětu
Předmět seznamuje se základními koncepty paralelního programování, modelem paralelního počítače PRAM a se základní sadou technik pro tvorbu paralelních algoritmů. Druhá část předmětu je věnována vícevláknovému programování včetně vypracování individuálního projektu.
Osnova
  • 1. Zopakování základních pojmů z teorie složitosti (notace O).
    2. Paradigma nesekvenčních výpočtů. PRAM a jeho varianty (EREW, CRCW, CREW). Složitostní míry paralelních algoritmů.
    3. Věta o zrychlení, Brentovo lemma. Teze o paralelní vyčíslitelnosti.
    4. Paralelizace pomocí vyvážených stromů.
    5. Paralelizace metodou "rozděl a opanuj".
    6. Paralelizace metodou segmentace.
    7. Paralelizace metodou řetězení.
    8. Paralelizace metodou urychlení kaskádou.
    9. Vícevláknové programování v jazyce Java.
    10. Samostatný projekt.
Literatura
    povinná literatura
  • CORMEN, T. H., LEISERSON, C. E., RIVEST, R. L., STEIN, C. Introduction to Algorithms. Cambridge: The MIT Press, 2009. ISBN 978-0262033848. info
  • JAJA, J. An Introduction to Parallel Algorithms. Addison-Wesley, Reading, Mass., 1992. info
    doporučená literatura
  • Threading in .NET, online: https://docs.microsoft.com/en-us/dotnet/standard/threading/
Výukové metody
Přednáška s aktivizací
Přednáška s analýzou videozáznamu
Metody hodnocení
Zkouška
Informace učitele
1. Mikroprojekty (6x5 bodů) + finální programátorský projekt Java/C# (30 bodů)
Minimum k absolvování: 50% z každého (mikro)projektu
2. Nejméně 50% bodů ze závěrečné písemky (max. 40 bodů) pokrývající celý obsah kursu.
Další komentáře
Předmět je dovoleno ukončit i mimo zkouškové období.
Předmět je zařazen také v obdobích léto 1994, léto 1995, léto 1996, léto 1997, léto 1998, léto 1999, léto 2000, léto 2001, léto 2002, léto 2003, léto 2004, léto 2005, léto 2006, léto 2007, léto 2008, léto 2009, léto 2010, léto 2011, léto 2012, léto 2013, léto 2014, léto 2015, léto 2016, léto 2017, léto 2018, léto 2019, léto 2020, léto 2021, léto 2022, léto 2023, léto 2024.