460-4040 – Programování paralelních aplikací I (PPA I)

Garantující katedraKatedra informatiky
Garant předmětuprof. Ing. Pavel Krömer, Ph.D.
Úroveň studiapregraduální nebo graduální
Verze předmětu
Kód verzeRok zavedeníRok zrušeníKredity
460-4040/01 2010/2011 2015/2016 4

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.