Uključene obrazovne institucije
Elektrotehnički fakultet / Fakultet organizacionih nauka, Univerzitet u Beogradu
Oblast
Upoznavanje sa osnovnim konceptima modernih paralelnih računarskih sistema i principa paralelnog programiranja. Detaljno upoznavanje sa nekoliko najznačajnijih paralelnih programskih modela.
Predmet treba da osposobi studenta da razume projektne odluke u oblasti paralelnih sistema i da praktično primenjuje principe paralelnog programiranja korišćenjem različitih paralelnih programskih modela.
Teorijska nastava
Uvod u paralelno računarstvo. Trendovi aplikacija, tehnologije i arhitektura. Paralelni programski modeli (zajednička memorija, slanje poruka i paralelizam podataka). Tehnike paralelizacije programskog koda i dekompozicije problema. Programski modeli bazirani na nitima (Pthreads, OpenMP) i razmeni poruka (MPI). Programiranje aplikacija opšte namene na grafičkim procesorima korišćenjem CUDA i OpenCL tehnologija. Optimizacija paralelnog programskog koda.
Praktična nastava
Upoznavanje sa tehnikama paralelizacije i konkretnim programskim modelima kroz praktičan rad na paralelizaciji sekvencijalnog programskog koda. Laboratorijske vežbe, korišćenje simulatora paralelnih sistema i alata za debagovanje i profajliranje programskog koda, domaći zadaci.