The course covers the basics of parallel programming and distributed processing of computationally intensive tasks and procedures. The aim of the course is to analyze the process communication and time complexity of process subtasks with respect to design the procedures with optimized parallel performance. Implementation of the studied methods is predominantly in programming languages JAVA and MATLAB.
Last update: Cejnar Pavel (12.09.2021)
Předmět je zaměřen na problematiku paralelního programování a distribuovaného zpracování dílčích procedur. Součástí předmětu je i rozbor komunikace a časové náročnosti jednotlivých procesů a odhad výkonnosti navržených paralelních procedur. Implementace studovaných metod je v programovacím jazyku JAVA a MATLAB.
Last update: Cejnar Pavel (12.09.2021)
Aim of the course -
Students will be able to:
Distinguish whether it is easy to make given task or procedure parallel.
Design effective parallel procedures.
Propose other possible acceleration of calculations for tasks with hard parallelization.
Last update: Pátková Vlasta (20.04.2018)
Studenti budou schopni:
Rozlišovat, zda je snadné paralelizovat danou úlohu.
Navrhnout efektivní postup paralelizace úlohy či výpočtu a stanovit meze, kdy se urychlení skutečně projeví.
Navrhnout způsoby urychlení výpočtů pro hůře paralelizovatelné úlohy.
Last update: Cejnar Pavel (12.09.2021)
Course completion requirements -
To complete the course, student must successfully pass an exam test covering the student's practical skills and pass the oral exam covering the theoretical knowledge. The final mark is determined by the points for attendance (max. 40 p, in selected cases can be replaced by the test), from the exam test (max. 30 p) and from the oral exam (max 30 p).
Last update: Švihlík Jan (26.04.2018)
Pro udělení klasifikovaného zápočtu je třeba úspěšně složit zkouškový test pokrývajícího praktické dovednosti studenta a úspěšné složit ústní zkoušku pokrývající teoretické znalosti studenta. Výsledná známka se určí podle dosažených bodů za docházku (max. 40 b, v odůvodněných případech lze nahradit zápočtovým testem), zkouškový test (max. 30 b) a ústní část zkoušky (max. 30 b).
Last update: Švihlík Jan (26.04.2018)
Literature -
R: Tvrdík, P.: Parallel Algorithms and Computing. ČVUT Praha, 2010. ISBN 978-80-01-04333-2.
A: Lea, D.: Concurrent Programming in Java: Design Principles and Pattern (2nd Edition). Prentice Hall, 1999. ISBN 978-0-201-31009-2.
A: Eckel, B.: Thinking in Java. Prentice Hall, 2006. ISBN 978-0131872486.
A: Patterson, A. D., Henessy, L. J.: Computer Organization and Design, Fourth Edition: The Hardware/Software Interface (The Morgan Kaufmann Series in Computer Architecture and Design).Morgan Kaufmann, 2011. ISBN 978-0123747501.
A: Wilkinson, B., Allen, M.: Parallel Programming: Techniques and Applications Using Networked Workstations and Parallel Computers. Prentice Hall, 1999.ISBN 0-13-671710-1.