Předmět: Optimalizační techniky pro zpracování multimediálních signálů

» Seznam fakult » FEI » KERS
Název předmětu Optimalizační techniky pro zpracování multimediálních signálů
Kód předmětu KERS/ROTZM
Organizační forma výuky Seminář
Úroveň předmětu Magisterský
Rok studia nespecifikován
Semestr Zimní
Počet ECTS kreditů 4
Vyučovací jazyk Čeština
Statut předmětu Povinně-volitelný
Způsob výuky Kontaktní
Studijní praxe Nejedná se o pracovní stáž
Doporučené volitelné součásti programu Není
Vyučující
  • Juryca Karel, Ing. Ph.D.
Obsah předmětu
1.Úvod do paralelního programování, programování pro více jádrové procesory a více procesorové stanice (cluster) 2.Profilování, ladění kódu, nástroje pro zjištění problematických míst v kódu 3.Základní optimalizační techniky I. (přehlednost programu, pořadí operací, alokace paměti, zjištění problému, časová a paměťová náročnost) 4.Optimalizační techniky II. (Hledání zbytečných částí kódu v programu, vnitřní funkce, optimalizace cyklů for-end) 5.Vektorizace a paralelizace programu (Využití maticového počtu a eliminace cyklů) 6.Programování v jazyce Python 7.Numerické výpočty na více jádrových procesorech 8.Paralelní programování na více jádrových procesorech v programovacím jazyce Python I. 9.Paralelní programování na více jádrových procesorech v programovacím jazyce Python II. 10.Paralelní programování na grafických jednotkách (GPU) 11.Paralelní programování na GPU I. 12.Paralelní programování na GPU II. 13.CUDA v programovacím jazyce Python

Studijní aktivity a metody výuky
Monologická (výklad, přednáška, instruktáž), Dialogická (diskuze, rozhovor, brainstorming)
  • Příprava na laboratorní měření, zpracování výsledků - 39 hodin za semestr
  • Účast na výuce - 26 hodin za semestr
  • Příprava na zkoušku - 30 hodin za semestr
  • Kontaktní výuka - 25 hodin za semestr
Výstupy z učení
Cílem předmětu je seznámit studenty s obecnými principy optimalizace, vektorizace a základy paralelního programování pro zpracovávání multimediálních signálů (akustických, obrazových, radarových atd.).
Studenti získají přehled v nástrojích pro paralelní programování, současně s přehledem programovacích technik paralelního programování, které lze obecně využít v libovolném programovacím jazyce.
Předpoklady
Student musí mít základní znalosti systému Matlab (operace s maticemi, vektory, indexace, programování cyklů).

Hodnoticí metody a kritéria
Ústní zkouška, Písemná zkouška

Student musí v průběhu semestru i při závěrečné zkoušce prokázat porozumění řešeným problémům a schopnost samostatně pracovat na zadaných problémech, aktivní účast na cvičeních. Konkrétní požadavky budou studentům sděleny vyučujícím v prvním týdnu semestru.
Doporučená literatura
  • LUTZ, Mark a David ASCHER. Naučte se Python. Praha: Grada. Pohotová příručka, 2003. ISBN 80-247-0367-X.
  • LUTZ, Mark a David ASCHER. Naučte se Python. Praha: Grada. Pohotová příručka, 2003. ISBN 80-247-0367-X.
  • Mathworks. Natick. MA: The Mathhworks, c1994-2019. 2019.
  • Mathworks. Natick. MA: The Mathhworks, c1994-2019. 2019.
  • PARKER, James. Python - An Introduction to Programming.. Herndon: Mercury Learning and Information., 2017. ISBN 978-1-9445346-5-3.
  • PARKER, James. Python - An Introduction to Programming.. Herndon: Mercury Learning and Information., 2017. ISBN 978-1-9445346-5-3.
  • SUH, Jung W. a Youngmin KIM. Accelerating MATLAB with GPU computing: a primer with examples.. Elseiver/Morgan Kaufman, 2014. ISBN 9780124080805.
  • SUH, Jung W. a Youngmin KIM. Accelerating MATLAB with GPU computing: a primer with examples.. Elseiver/Morgan Kaufman, 2014. ISBN 9780124080805.
  • TUAMANEN, Brain. Hands-On GPU Programming with Python and CUDA. Birmingham: Packt., 2018. ISBN 978-1-78899-391-3.
  • TUAMANEN, Brain. Hands-On GPU Programming with Python and CUDA. Birmingham: Packt., 2018. ISBN 978-1-78899-391-3.


Studijní plány, ve kterých se předmět nachází
Fakulta Studijní plán (Verze) Kategorie studijního oboru/specializace Doporučený ročník Doporučený semestr