460-4040 – Programování paralelních aplikací I (PPA I)
Garantující katedra | Katedra informatiky |
Garant předmětu | prof. Ing. Pavel Krömer, Ph.D. |
Úroveň studia | pregraduální nebo graduální |
Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Přehled v oblasti návrhu, realizace a hodnocení paralelních algoritmů. Praktické osvojení paralelních programovacích technik pro vybrané víceprocesorové počítačové systémy.
Pracovní znalosti v oblasti paralelních systémů a jejich programování, zejména:
Samostatný návrh paralelních algoritmů, resp. paralelizace sekvenčních algoritmů.
Praktická realizace paralelního algoritmu na bázi modelu předávání zpráv.
Analýza algoritmu a vyhodnocení implementace. Optimalizace a zvyšování efektivity.
Vyučovací metody
Přednášky
Individuální konzultace
Cvičení (v učebně)
Projekt
Ostatní aktivity
Anotace
Kurz poskytne posluchačům základy pro aktivní práci v oblasti paralelních systémů, algoritmů a programování, přičemž se zaměřuje na praktickou tvorbu programů, aby byli s to využít dnešní výkonnou výpočetní techniku, od paralelních superpočítačů až po vícejádrové notebooky, pro výpočetně náročné aplikace z různých aplikačních oblastí. Důraz je kladen na práci s tzv. multipočítači, kde kooperace procesů je řešena na bázi předávání zpráv, diskutována však budou i specifika systémů se sdílenou pamětí (symetrických multiprocesorů). Toto řekněme klasické programování paralelních aplikací je doplněno úvodem do speciálnějších technik v souladu s aktuální vývojem v oblasti paralelního programování, jako je paralelizace prostřednictvím grafických akcelerátorů nebo paralelního Matlabu. Cvičení jsou vesměs věnována praktickému návrhu paralelních algoritmů a jejich implementaci v prostředí MPI či PVM, OpenMP nebo třeba v paralelním Matlabu , a to na nejvýkonnější výpočetní technice VŠB-TUO (ve správě Centra výpočetní techniky), t.č. na síti pracovních stanic Ultra se vzdáleným přístupem na 32-procesorový klastr Teri (128 jader) a na čtyřprocesorový symetrický multiprocesor Quad.
Povinná literatura:
Sylabus
I. Foster: Designing and building of parallel programs. Addison-Wesley, 1995
Al Geist et al.: PVM: Parallel Virtual Machine. A User's Guide and Tutorial for Networked Parallel Computing. The MIT Press, 1994.
MPI: A Message-Passing Interface Standard. Message Passing Interface Forum, University of Tennessee, June 1995.
Doporučená literatura:
K. Ježek et al.: Paralelní architektury a programy. ZČU Plzeň, 1997.
B. Wilkinson, M. Allen: Parallel Programming. Prentice Hall, 1999.
R. Chandra et al.: Parallel Programming in OpenMP. Morgan Kaufmann Publishers, 2001.
Prerekvizity
Předmět nemá žádné prerekvizity.
Korekvizity
Předmět nemá žádné korekvizity.