Paralelní programování

Předmět: Paralelní programování, II. ročník INF a AINF
Přednášející: Jan Outrata
Cvičící: Jan Outrata

Kurz uvádí posluchače do problémů paralelního programování a technik jejich řešení. Znalosti nástrojů a technik paralelního programování patří v současné době, vzhledem k vývoji hardware (vícejádrové procesory, stovky procesorů na grafických kartách použitelných pro výpočty), k základním požadavkům kladeným na kvalitního programátora. V kurzu studenti poznají jak výhody tak i problémy vznikající u paralelních programů se sdílenou pamětí, na klasických synchronizačních problémech i na úlohách z praxe, a naučí se je řešit pomocí metod synchronizace. Programuje se v jazycích C/C# pomocí rozhraní poskytovaných operačními systémy a také v jazyce Common Lisp, ve kterém jsou představena rozšíření pro paralelní programování, která se v poslední době dostávají do moderních programovacích jazyků. Předpokládá se dovednost programování v jazycích C/C# a Common Lisp.

Na kurz navazují některé předměty magisterského oboru Informatika, v nichž je podrobněji probírána problematika paralelního programování, a také distribuovaných systémů, které získávají na významu s rozvojem počítačových i jiných (např. mobilních) sítí.


Studijní materiály



Literatura


Základy paralelního (konkurentního) programování a rozborem klasických synchronizačních problémů se zabývají např. následující knihy:

Další zdroje


Kniha s mnoha synchronizačními problémy a jejich řešeními:

Mnoho synchronizačním problémů včetně jejich řešení lze samozřejmě najít i na internetu, např.

Knihovna pro paralelní výpočty v LispWorks


http://phoenix.inf.upol.cz/~outrata/, outrata@phoenix.inf.upol.cz
Jan Outrata, generováno: 7.1.2013