Programování v paralelním prostředí - NPRG042
Anglický název: Programming in Parallel Environment
Zajišťuje: Katedra softwarového inženýrství (32-KSI)
Fakulta: Matematicko-fyzikální fakulta
Platnost: od 2024
Semestr: letní
E-Kredity: 6
Rozsah, examinace: letní s.:2/2, KZ [HT]
Počet míst: neomezen
Minimální obsazenost: neomezen
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: vyučován
Jazyk výuky: čeština
Způsob výuky: prezenční
Způsob výuky: prezenční
Další informace: https://www.ksi.mff.cuni.cz/teaching/nprg042-web/
Garant: doc. RNDr. Martin Kruliš, Ph.D.
Třída: Informatika Mgr. - Softwarové systémy
Kategorizace předmětu: Informatika > Programování
Je prerekvizitou pro: NPRG058
Výsledky anket   Termíny zkoušek   Nástěnka   
Anotace -
Vícejádrové procesory přináší možnost provádět paralelní výpočty i na běžných počítačích. Implementace aplikací využívajících paralelní výpočty je netriviální záležitostí. Cílem předmětu je proto seznámit studenty teoreticky i prakticky se současně používanými softwarovými technologiemi pro zápis paralelních algoritmů, naučit studenty ladit paralelní programy a v neposlední řadě naučit studenty ladit výkon paralelních programů.
Poslední úprava: T_KSI (19.04.2007)
Podmínky zakončení předmětu -

Studenti vypracují 5 domácích úloh z vybraných technologií pro paralelní a distribuované výpočty. Každá úloha bude obodována 0-4 body v závislosti na dosaženém zrychlení vůči referenční sériové verzi řešení. Výsledná známka ze zkoušky odpovídá součtu získaných bodů:

12 a více - výborně

9-11 - velmi dobře

6-8 - dobře

méně než 6 - neprospěl

Zápočet student získá za aspoň 5 bodů, kde je nutné mít z každé úlohy aspoň jeden bod.

Další podrobnosti na stránce předmětu.

Poslední úprava: Yaghob Jakub, RNDr., Ph.D. (25.02.2020)
Literatura

A. Grama, A. Gupta, G. Karypis, V. Kumar: Introduction to Parallel Computing, Second Edition, Addison Wesley, 2003

C. Hughes, T. Hughes: Parallel and Distributed Programming Using C++, Addison Wesley, 2003

B. Lewis, D.J. Berg: PThreads Primer: A Guide to Multithreaded Programming, Sun Soft Press, 1996

G.E. Karniadakis, R.M. Kirby II: Parallel Scientific Computing in C++ and MPI: A Seamless Approach to Parallel Algorithms and their Implementation, Cambridge University Press, 2003

M. McCool, A.D. Robison, J. Reinders: Structured Parallel Programming, Morgan Kaufmann Publishers, 2012

Intel Threading Analysis Tools, www.intel.com

Intel Cluster Tools, www.intel.com

OpenMP, www.openmp.org

Poslední úprava: Yaghob Jakub, RNDr., Ph.D. (18.09.2013)
Sylabus -
  • Teoretický úvod do paralelních algoritmů
  • Lock-free algoritmy a datové struktury
  • Návrhové vzory paralelního programování
  • Paralelizace v programovacích jazycích (C++, OpenMP, Threading Building Blocks)
  • Distribuované výpočty v clusteru (MPI)
  • Výpočty na koprocesorech (OpenCL, Intel Xeon Phi)

Poslední úprava: Yaghob Jakub, RNDr., Ph.D. (22.04.2016)