Témata přednášek
● Úvod do high performace computing (HPC), architektura procesoru x86, principy optimalizace, měření výkonu přístupem na hardware performance counters, knihovna PAPI, nástroj Valgrind.
● Vektorové SIMD programování, využití instrukcí AVX. HPC problémy a lineární algebra, použití knihoven BLAS.
● Architektura superpočítačů, úvod do prostředí superpočítače, úvod do paralelního počítání, koncepty a terminologie paralelního programování, úvod do OpenMP a MPI, kompilace OpenMP a MPI programů, spouštění paralelních procesů.
● Základní OpenMP techniky, základní MPI komunikace, debuggování a profilování paralelních programů.
● Pokročilé OpenMP a hybridní programování.
● Granularita, loadbalancing a metascheduling. Implementace Master-slave v MPI.
● Pokročilá témata: Záludnosti programování v OpenMP, MPI komunikátory a
grupy, neblokující MPI komunikace, kolektivní MPI operace.
● Dynamické MPI, intrakomunikátory a interkomunikátory, spojovaní MPI
procesů.
● Jednostranná MPI komunikace, MPI okna, rámce a epochy.
● MPI a paralelní I/O.
● Integrace BLACS a MPI, knihovny pro paralelní distribuovanou lineární algebru ScaLapack a PBLAS.
● Příklady HPC aplikací, řešení lineárních rovnic v paralelním distribuovaném režimu.
Témata cvičení
Cvičení budou korespondovat s přednáškami. Témata cvičení budou následující:
● Architektury počítačů; výkon počítače a jeho měření
● Vektorové programování
● Využití knihoven lineární algebry v paralelních prostředích
● Programování v OpenMP
● Programování v MPI
● Příklady HPC aplikací
● Úvod do high performace computing (HPC), architektura procesoru x86, principy optimalizace, měření výkonu přístupem na hardware performance counters, knihovna PAPI, nástroj Valgrind.
● Vektorové SIMD programování, využití instrukcí AVX. HPC problémy a lineární algebra, použití knihoven BLAS.
● Architektura superpočítačů, úvod do prostředí superpočítače, úvod do paralelního počítání, koncepty a terminologie paralelního programování, úvod do OpenMP a MPI, kompilace OpenMP a MPI programů, spouštění paralelních procesů.
● Základní OpenMP techniky, základní MPI komunikace, debuggování a profilování paralelních programů.
● Pokročilé OpenMP a hybridní programování.
● Granularita, loadbalancing a metascheduling. Implementace Master-slave v MPI.
● Pokročilá témata: Záludnosti programování v OpenMP, MPI komunikátory a
grupy, neblokující MPI komunikace, kolektivní MPI operace.
● Dynamické MPI, intrakomunikátory a interkomunikátory, spojovaní MPI
procesů.
● Jednostranná MPI komunikace, MPI okna, rámce a epochy.
● MPI a paralelní I/O.
● Integrace BLACS a MPI, knihovny pro paralelní distribuovanou lineární algebru ScaLapack a PBLAS.
● Příklady HPC aplikací, řešení lineárních rovnic v paralelním distribuovaném režimu.
Témata cvičení
Cvičení budou korespondovat s přednáškami. Témata cvičení budou následující:
● Architektury počítačů; výkon počítače a jeho měření
● Vektorové programování
● Využití knihoven lineární algebry v paralelních prostředích
● Programování v OpenMP
● Programování v MPI
● Příklady HPC aplikací