Detail předmětu
Architektura a programování paralelních systémů
ARC Ak. rok 2005/2006 letní semestr 5 kreditů
Předmět pokrývá architekturu i programování paralelních systémů s fukčním a datovým paralelismem. Nejdříve je pojednáno o nejrozšířenějších symetrických multiprocesorech se společnou sběrnicí (SMP) a jejich programování v prostředí OpenMP. Následuje výklad propojovacích sítí jako základ populárních svazků pracovních stanic a dalších systémů se zasíláním zpráv. Jejich programování ve standardizovaném rozhraní MPI je ilustrováno případovými studiemi paralelních aplikací. V poslední skupině jsou datově-paralelní systémy a programování.
Garant předmětu
Jazyk výuky
Zakončení
Rozsah
- 39 hod. přednášky
- 5 hod. cvičení
- 8 hod. projekty
Zajišťuje ústav
Získané dovednosti, znalosti a kompetence z předmětu
Přehled principů výstavby paralelních systémů a propojovacích sítí, komunikačních technik a algoritmů. Přehled o možnostech a dovednost paralelizace základních technických úloh, znalost paralelního programování v MPI a v OpenMP.
Znalost možností a omezení paralelního zpracování, schopnost odhadnout výkonnost paralelních aplikací. Jazyková výbava pro komunikaci a synchronizaci procesů/vláken. Kompetence v technických a programových prostředcích pro náročné vědecké výpočty a simulace.
Cíle předmětu
Orientovat se v nabídce paralelních systémů, umět posoudit komunikační a výpočetní možnosti konkrétní architektury a predikovat výkonnost paralelních aplikaci. Seznámit se s nejdůležitějšími prostředky paralelního programování (MPI, OpenMP), naučit se je prakticky používat a řešit problémy paralelně.
Požadované prerekvizitní znalosti a dovednosti
Architektura počítače typu von Neumann, hierarchické uspořádání paměťového systému, vyrovnávací paměti a jejich organizace, programování v JSI a v C/C++
Literatura studijní
- aktuální PPT prezentace přednášek
- http://dolores.sp.cs.cmu.edu/spring2013/
- http://www.cs.kent.edu/~jbaker/ParallelProg-Sp11/
Literatura referenční
- Hennessy, J.L., Patterson, D.A.: Computer Architecture - A Quantitative Approach. 5. vydání, Morgan Kaufman Publishers, Inc., 2012, 912 s., ISBN: 9780123747501
- Pacecho, P.: Introduction to Parallel Programming. Morgan Kaufman Publishers, 2011, 392 s., ISBN: 9780123742605
Osnova přednášek
- Funkční a datový paralelismus, ukazatele výkonnosti, režie, zákony omezující zrychlení.
- Multiprocesory se sdílenou pamětí a společnou sběrnicí. Saturace sběrnice, organizace paměti.
- Koherence vyrovnávacích pamětí, protokoly MSI a MESI.
- OpenMP, paralelizace smyček.
- Synchronizace v OpenMP. zámky a bariéry.
- Výkonnost paralelních aplikací.
- Propojovací a přepínací sítě. směrovací algoritmy.
- Řízení přenosu zpráv, architektura směrovačů.
- Zpracování zpráv, kolektivní komunikace a výkonnost komunikací.
- Programování se zasíláním zpráv (MPI).
- Výpočty na svazcích počítačů s použitím párových a kolektivních komunikací.
- Multiprocesory s DSM.
- Datově paralelní systémy a programování, HPF.
Osnova numerických cvičení
- Model SMP s koherentními vyrovnávacími pamětmi, předvýběr dat, falešné sdílení, paralelizace FFT.
- Řazení na SMP.
- Půlsemestrální test.
- Kolektivní komunikace. Numerické metody v MPI.
- Paralelizace úloh zpracování obrazů.
Průběžná kontrola studia
Hodnocení studia je založeno na bodovacím systému. Pro úspěšné absolvování předmětu je nutno dosáhnout 50 bodů.
Získání 20 ze 40 možných bodů během semestru.
Kontrolovaná výuka
Čtyři malé projekty v rozsahu 2 hodin každý; půlsemestrální písemka.