UINA503 Non-Sequential Computing

Filozoficko-přírodovědecká fakulta v Opavě
zima 2021
Rozsah
3/0/0. 5 kr. Ukončení: zk.
Vyučující
doc. Ing. Petr Sosík, Dr. (přednášející)
doc. Ing. Petr Sosík, Dr. (cvičí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
The course introduces elementary concepts of parallel programming, the parallel computing model PRAM and a basic set of techniques of parallel algorithm development. Another part of the course is devoted to multi-thread programming, including practical projects.
Osnova
  • 1. Overview of elementary concepts of the complexity theory, the O notation. 2. Paradigm of parallel computing. The model PRAM and its variants (EREW, CRCW, CREW). Performance of parallel algorithms. 3. Brent Lemma, the WT Scheduling Principle. The Parallel Computation Thesis. 4. Paralelization techniques: balanced trees. 5. Paralelization techniques: divide and conquer. 6. Paralelization techniques: partitioning. 7. Paralelization techniques: pipelining. 8. Paralelization techniques: accelerated cascading. 9. Introduction to multi-thread programming. 10. Individual project.
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
Interactive lecture Lecture with a video analysis
Metody hodnocení
Microprojects + final programming poject
Předmět je zařazen také v obdobích zima 2022, zima 2023, zima 2024.