Popis předmětu - B4M35PAG
| B4M35PAG | Paralelní algoritmy | ||
|---|---|---|---|
| Role: | PO | Rozsah výuky: | 2P+2S |
| Katedra: | 13135 | Jazyk výuky: | CS |
| Garanti: | Zakončení: | Z,ZK | |
| Přednášející: | Kreditů: | 6 | |
| Cvičící: | Semestr: | Z | |
Webová stránka:
https://cw.fel.cvut.cz/wiki/courses/b4m35pag/startAnotace:
V úvodních přednáškách se zaměříme na obecné principy návrhu paralelních algoritmů a jejich základní vlastnosti, které jsou důležité pro pochopení principu jak paralelních, tak i distribuovaných algoritmů. Dále si vysvětlíme základní paralelní algoritmy, typicky tvořící stavební kameny řešení reálných problémů. Úlohy na cvičení budou zaměřeny na hardwarové platformy, se kterými se studenti běžně setkají v praxi.Osnovy přednášek:
| 1. | Úvod do paralelního programování | |
| 2. | Principy návrhu paralelních a distribuovaných algoritmů | |
| 3. | Základní komunikační operace | |
| 4. | Vlastnosti paralelních algoritmů | |
| 5. | Maticové algoritmy | |
| 6. | Algoritmy pro lineární algebru | |
| 7. | Řazení, TEST | |
| 8. | Paralelní akcelerátory | |
| 9. | Grafové algoritmy I. | |
| 10. | Grafové algoritmy II. | |
| 11. | Kombinatorické algoritmy | |
| 12. | Dynamické programování | |
| 13. | Rychlá Fourierova transformace |
Osnovy cvičení:
| 1. | Úvod do paralelního programování, nastavení prostředí | |
| 2. | Paralelní programování v C++11 - základy | |
| 3. | Paralelní programování v C++11 - pokročilé konstrukty | |
| 4. | Zadaní semestrální práce a prvního domácího úkolu | |
| 5. | OpenMP - základní konstrukty | |
| 6. | OpenMP - pokročilé konstrukty | |
| 7. | Zadání druhého domácího úkolu a odevzdání prvního | |
| 8. | Konzultace semestrální práce | |
| 9. | OpenMPI - distribuované algoritmy | |
| 10. | Zadání třetího domácího úkolu a odevzdání druhého | |
| 11. | Konzultace semestrální práce | |
| 12. | Prezentace semestrální práce | |
| 13. | Odevzdání třetího domácího úkolu, zápočet |
Literatura:
| [1] | Ananth Grama, Anshul Gupta, George Karypis, Vipin Kumar: Introduction to Parallel Computing, Second Edition, Addison Wesley, 2003. | |
| [2] | Georg Hager, Gerhard Wellein: Introduction to High Performance Computing for Scientists and Engineers, CRC Press, 2011. | |
| [3] | James Reinders, Jim Jeffers: Intel Xeon Phi Coprocessor High-Performance Programming, Newnes, 2013. |
Požadavky:
Základní znalost jazyka C++ a algoritmizace.Předmět je zahrnut do těchto studijních plánů:
| Plán | Obor | Role | Dop. semestr |
| MPOI6_2018 | Softwarové inženýrství | PO | 3 |
| MPOI4_2018 | Počítačové inženýrství | PO | 1 |
| Stránka vytvořena 18.2.2026 17:51:37, semestry: Z/2027-8, Z,L/2026-7, L/2027-8, L/2025-6, připomínky k informační náplni zasílejte správci studijních plánů | Návrh a realizace: I. Halaška (K336), J. Novák (K336) |