| Název: | Aplikace paralelních počítačů |
|---|
| Zkratka: | PDD |
|---|
| Ak.rok: | 2012/2013 |
|---|
| Semestr: | zimní |
|---|
| Studijní plán: | |
|---|
| Vyučovací jazyk: | čeština |
|---|
| Ukončení: | zkouška (kombinovaná) |
|---|
| Výuka: | | hod./sem | přednáška | sem./cvičení | lab. cvičení | poč. cvičení | jiná |
|---|
| Rozsah: | 39 | 0 | 0 | 0 | 0 |
|---|
| | zkouška | testy | cvičení | laboratoře | ostatní |
|---|
| Body: | 0 | 0 | 0 | 0 | 0 |
|---|
|
|---|
| Garant: | Dvořák Václav, prof. Ing., DrSc., UPSY |
|---|
| Fakulta: | Fakulta informačních technologií VUT v Brně |
|---|
| Pracoviště: | Ústav počítačových systémů FIT VUT v Brně |
|---|
| Prerekvizity: | |
|---|
| | | Cíle předmětu: |
|---|
Vysvětlit možnosti paralelního programování na svazcích počítačů, SMP, na vícejádrových procesorech a GPU. Seznámit se s metodikou paralelizace a predikcí výkonnosti vybraných reálných aplikací, tvorbě správných programů a užití paralelních výpočtů v praxi. | | Anotace: |
|---|
Předmět podává přehled existujících použitelných paralelních platforem a modelů programování, zejména programování se sdílenou pamětí (OpenMP), zasíláním zpráv (MPI) a datově-paralelní programování (CUDA, OpenCL). Metodika paralelizace programů je doplněna studiem výkonnosti a aplikována na určitý konkrétní problém. Důraz je na praktických aspektech a implementaci. | | Požadované prerekvizitní znalosti a dovednosti: |
|---|
Typy paralelních počítačů, programování v C/C++, základní numerické metody | | Získané dovednosti, znalosti a kompetence z předmětu: |
|---|
Naučit se paralelizovat různé třídy úloh a predikovat jejich výkonnost. Umět využívat paralelismu a komunikace na úrovni vláken a procesů. Seznámit se s moderními standardními rozhraními, rozšířením jazyků a dalšími nástroji pro paralelní programování. Napsat a odladit paralelní program pro vybranou úlohu. | | Dovednosti, znalosti a kompetence obecné: |
|---|
Paralelní architektury s distribuovanou a sdílenou pamětí, programování v C/C++ s MPI a OpenMP, GPGPU, paralelizace základních numerických metod. | | Osnova přednášek: |
|---|
- Architektury paralelních počítačů, ukazatele výkonnosti a predikce výkonnosti.
- Vzory paralelního programování
- Programování se sdílenými proměnnými v OpenMP
- Programování zasíláním zpráv v MPI
- Datově paralelní programování v CUDA/OpenCL
- Příklady paralelizace úloh a paralelních aplikací
| | Literatura referenční: |
|---|
- Pacecho, P.: Introduction to Parallel Programming. Morgan Kaufman Publishers, 2011, 392 s., ISBN: 9780123742605
- Kirk, D., and Hwu, W.: Programming Massively Parallel Processors: A Hands-on Approach, Elsevier, 2010, s. 256, ISBN: 978-0-12-381472-2
| | Literatura studijní: |
|---|
- http://www.cs.kent.edu/~jbaker/ParallelProg-Sp11/
| | Kontrolovaná výuka: |
|---|
Obhajoba projektu, programového díla využívajícího některou variantu paralelního programování. Zkouška probíhá jako obhajoba malého projektu, nejlépe z oblasti, na kterou se doktorand chce zaměřit v disertační práci. Projekt by měl demonstrovat potřebné zvýšení výkonnosti při řešení konkrétního problému použitím clusteru, vícejádrového procesoru nebo GPU. Podle toho je třeba zvolit programování v OpenMPI, OpenMP nebo CUDA/OpenCL, popřípadě v nějakém dalším specializovaném jazyce. | | |
|