UINA503 Non-Sequential Computing

Filozoficko-přírodovědecká fakulta v Opavě
zima 2025
Rozsah
3/0/0. 5 kr. Ukončení: zk.
Vyučující
doc. RNDr. Luděk Cienciala, Ph.D. (přednášející)
doc. Ing. Petr Sosík, Dr. (přednášející)
doc. Ing. Petr Sosík, Dr. (cvičící)
Garance
doc. RNDr. Luděk Cienciala, Ph.D.
Ú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.
Výstupy z učení

After completing the course, the student will be able to:

  • explain fundamental concepts of parallel programming,

  • describe the PRAM parallel computing model and its characteristics,

  • characterize basic techniques for parallel algorithm design,

  • apply parallel algorithm development techniques to solve computational problems,

  • explain principles of multi-thread programming,

  • implement multi-threaded applications using appropriate programming tools and libraries,

  • design and develop practical parallel and multi-threaded projects,

  • analyze and evaluate the performance and efficiency of parallel and multi-threaded programs,

  • solve technical problems related to parallel and multi-thread programming.

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
Vyučovací jazyk
Angličtina
Předmět je zařazen také v obdobích zima 2021, zima 2022, zima 2023, zima 2024.
  • Statistika zápisu (nejnovější)
  • Permalink: https://is.slu.cz/predmet/fpf/zima2025/UINA503