Přeskočit na hlavní obsah
Přeskočit hlavičku

Základy programování HPC systémů

Jazyk výuky angličtina, čeština
Kód 9600-1028
Zkratka ZPHPC
Název předmětu česky Základy programování HPC systémů
Název předmětu anglicky Introduction to programming of HPC systems
Garantující katedra IT4Innovations
Garant předmětu Ing. Ondřej Meca, Ph.D.

Cíle předmětu

Kurz poskytne základy tvorby paralelních aplikací, zahrnující modely paralelního zpracování a optimalizační techniky v závislosti na cílové paralelní architektuře.

Student bude po absolvování předmětu schopen:
- aktivně využívat nové pojmy z oblasti paralelního programování
- analyzovat algoritmus, navrhnout vhodnou dekompozici pro jeho paralelizaci
- analyzovat efektivitu návrhu paralelizace
- implementovat a optimalizovat algoritmus s využitím paralelizace na úrovni instrukcí jádra procesoru, s využitím kombinované výpočetní síly mnoha jader (multicore(CPU) i manycore(MIC)) prostřednictvím direktiv OpenMP a s využitím kombinované výpočetní síly mnoha výpočetních uzlů, prostřednictvím inter procesové komunikace MPI.

Povinná literatura

1. Michael McCool (Author), James Reinders (Author), Arch Robison (Author), Structured Parallel Programming: Patterns for Efficient Computation Paperback – June 25, 2012
2. http://mpi-forum.org, MPI: A Message-Passing Interface Standard
3. http://openmp.org, OpenMP Application Program Interface

Doporučená literatura

1. http://software.intel.com, Optimization and Performance Tuning for Intel® Xeon Phi™ Coprocessors - Part 1: Optimization Essentials
2. Intel® 64 and IA-32 Architectures Optimization Reference Manual
3. High Performance Parallelism Pearls: Multicore and Many-core Programming Approaches Paperback – November 17, 2014 by James Reinders (Author), James Jeffers (Author)