Název:

Architektura a programování paralelních systémů

Zkratka:ARC
Ak.rok:2010/2011
Semestr:letní
Studijní plán:
ProgramOborRočníkPovinnost
IT-MGR-2MBI2.povinně volitelný - skupina C
IT-MGR-2MBS-volitelný
IT-MGR-2MGM-povinně volitelný - skupina C
IT-MGR-2MGM.-volitelný
IT-MGR-2MIN-volitelný
IT-MGR-2MIN.-volitelný
IT-MGR-2MIS-volitelný
IT-MGR-2MIS.-volitelný
IT-MGR-2MMI1.povinně volitelný - skupina C
IT-MGR-2MMM-volitelný
IT-MGR-2MPS1.povinný
IT-MGR-2MPV1.povinný
IT-MGR-2MSK1.povinný
IT-MGR-2EITE2.volitelný
Vyučovací jazyk:čeština
Kredity:5 kreditů
Ukončení:zápočet+zkouška (písemná)
Výuka:
hod./sempřednáškasem./cvičenílab. cvičenípoč. cvičeníjiná
Rozsah:3900013
 zkouškatestycvičenílaboratořeostatní
Body:60100030
Garant:Dvořák Václav, prof. Ing., DrSc., UPSY
Přednášející:Bidlo Michal, Ing., Ph.D., UPSY
Dvořák Václav, prof. Ing., DrSc., UPSY
Cvičící:Dvořák Václav, prof. Ing., DrSc., UPSY
Pospíchal Petr, Ing., UPSY
Fakulta:Fakulta informačních technologií VUT v Brně
Pracoviště:Ústav počítačových systémů FIT VUT v Brně
Nahrazuje:
Architektury počítačů (ARP), UPSY
Praktické paralelní programování (PPP), UPSY
 
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ě.
Anotace:
  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 teorii paralelních systémů a paralelizaci programů. Následuje výklad programování systémů se sdílenou pamětí v prostředí OpenMP a popis nejrozšířenějších mnoho-jádrových multiprocesorů SMP i pokročilých systémů DSM NUMA.  Pokračuje výklad programování pro systémy se zasíláním zpráv ve standardizovaném rozhraní  MPI. Propojovací sítě jsou probrány samostatně a po té jejich uplatnění ve svazcích, mnoho-jádrových čipech i v nejvýkonnějších systémech. Závěrem je pojednáno o akcelerátorech SIMD a o GPGPU.
Požadované prerekvizitní znalosti a dovednosti:
  Von Neumannova architektura počítače, paměťová hierarchie, paměti cache a jejich organizace, programování v JSI a v C/C++.
Získané dovednosti, znalosti a kompetence z předmětu:
  Přehled principů výstavby paralelních systémů a propojovacích sítí, schopnost odhadnout výkonnost paralelních aplikací. Přehled o možnostech paralelizace základních technických úloh, znalost paralelního programování v MPI a v OpenMP.
Použití akcelerátorů SIMD a GPGPU.
Dovednosti, znalosti a kompetence obecné:
  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.
Osnova přednášek:
 1. Úvod do paralelního zpracování
2. Vzory pro paralelní programování
3. Programování se sdílenou pamětí - úvod do OpenMP
4. Synchronizace a povědomí o výkonnosti v OpenMP
5. Sdílená paměť a koherence pamětí cache
6. Komponenty symetrických multiprocesorů
7. Architektury CC-NUMA DSM
8. Rozhraní zasílání zpráv MPI
9. Kolektivní komunikace
10. Propojovací sítě: topologie a směrovací algoritmy
11. Propojovací sítě: přepínání, řízení toku, zpracování zpráv a výkonnost
12. Architektury s distribuovanou pamětí, datově-paralelní architektury
13. Případové studie paralelních aplikací
Osnova numerických cvičení:
 Numerická cvičení u předmětu nejsou plánována.
Osnova ostatní - projekty, práce:
 
  • Predikce výkonnosti zadané paralelní aplikace na svazku počítačů. 
  • Vývoj aplikace na SMP v OpenMP.
  • Paralelní program v MPI na svazku blades.
Literatura referenční:
 
  1. Hennessy, J.L., Patterson, D.A.: Computer Architecture - A Quantitative Approach. 4. vydání, Morgan Kaufman Publishers, Inc., 2007, 1136 p., ISBN 1-55860-596-7.  
  2. Quinn, M.J: Parallel Programming in C with MPI and OpenMP. McGraw Hill, 2004, 529 s., ISBN: 0072822562.
Průběžná kontrola studia:
  Tři malé projekty v rozsahu 5, 4 a 4 hodin ; půlsemestrální písemka.
Podmínky zápočtu:
  Pro udělení zápočtu a připuštění ke zkoušce je třeba během semestru získat 20 bodů ze 40 možných.