|
110 Elektrotehnika i informacijska tehnologija
112 Elektronika i računalno inženjerstvo
114 Komunikacijska i informacijska tehnologija
150 Industrijsko inženjerstvo
220 Elektronika i računalno inženjerstvo
222 Računalno inženjerstvo
231 Automatizacija i pogoni
232 Elektroenergetski sustavi
242 Telekomunikacije i informatika
261 Konstrukcijsko-energetsko strojarstvo
262 Računalno projektiranje i inženjerstvo
263 Proizvodno strojarstvo
270 Industrijsko inženjerstvo
271 Proizvodni management
272 Upravljanje životnim ciklusom proizvoda
310 Elektrotehnika i informacijska tehnologija
920 Elektronika i računalno inženjerstvo
940 Komunikacijska i informacijska tehnologija
|
|
Nema predmeta
Upit treba biti dulji od 1 znaka...
Nema rezultata
U polje za pretragu upišite naziv ili kôd predmeta koji želite pronaći
ciljevi predmeta
Osposobljavanje studenata za:
• razumijevanje temeljnih načela i metodologije paralelnog programiranja paralelnih računalnih arhitektura
• primjenu programskog jezika za paralelno računanje i sposobnost implementacije u razvoju aplikacija
očekivani ishodi učenja
Student će nakon uspješno svladanog predmeta moći:
• navesti primjere paralelnih algoritama i često korištenih programskih struktura
• objasniti paralelizam algoritma i prepoznati to svojstvo kod konkretnih algoritama
• implementirati jednostavnije paralelne algoritme
• primijeniti stečena znanja kod implementacije paralelnih algoritama
nastava i predavači
|
|
30 sati
2 sata tjedno × 15 tjedana
|
|
|
30 sati
2 sata tjedno × 15 tjedana
|
sadržaj
Osnovne ideje paralelnog programiranja i primjeri primjene. Razvojna okruženja za paralelno programiranje. Ekstenzije programskih jezika za paralelno programiranje.
Osnovne programske strukture, tipovi podataka, operatori i funkcije. Algoritmi paralelnog programiranja (Pronalaženje paralelizma, Struktura algoritma, Pomoćne strukture, Komunikacijski algoritmi. Sortiranje. Redukcija). Modeli paralelnog programiranja (Intel Cilk Plus, Intel TBB, OpenCL). Analiza izvedbe koda. Implementacija programskog jezika za paralelno programiranje na CPU i GPU.
preporučena literatura
1. A. Grama, G. Karypis, V. Kumar, A. Gupta: Introduction to Parallel Computing, 2nd Edition. Addison-Wesley, 2003.
2. David B. Kirk and Wen-mei W. Hwu: Programming Massively Parallel Processors: A Hands-on Approach. Morgan Kaufmann, 2nd Edition, Elsevier, 2012.
način praćenja kvalitete i uspješnosti izvedbe svakog predmeta i/ili modula
Mišljenja studenata o kvaliteti nastave putem anketa.
Nastavnici koji podučavaju srodne predmete surađuju i zajednički vode brigu o kvaliteti nastave.
ispit (način polaganja, ispitni rokovi)
Tijekom semestra biti će održana dva međuispita (kolokvija). Prvi međuispit je nakon 7 tjedana, a drugi međuispit po završetku nastave. Na završnom ispitu studenti polažu dijelove gradiva koje nisu položili na međuispitima. Prvi međuispit se i završni ispit provodi kao pisani ispit u trajanju od 90 minuta.
Uvjet za polaganje ispita je 50% bodova od ukupnog broja bodova. Uvjet za pozitivnu ocjenu je pozitivna ocjena iz laboratorijskih vježbi, te srednja vrijednost dva međuispita ((M1 + M2)/2) od najmanje 50%. Pri tome student na svakom od međuispita mora imati najmanje 45%.
Konačna ocjena formira se prema formuli:
Ocjena(%)= 0,4M1 + 0,4M2 + 0,2L
M1, M2 - bodovi na međuispitima, izraženo u postocima L - bodovi iz laboratorijskih vježbi i projektnih zadataka, izraženo u postocima
Konačna se ocjena utvrđuje na sljedeći način:
Postotak Ocjena
50% do 61,9% dovoljan (2)
62% do 74,9% dobar (3)
75% do 89,9% vrlo dobar (4)
90% do 100% izvrstan (5)
Prema Članku 65. Statuta Fakulteta, student je dužan sudjelovati u radu svih oblika nastave te prisustvovati: predavanjima najmanje 70 % nastavnih sati, laboratorijskim vježbama 100% nastavnih sati. Ukoliko ne ispuni navedene uvjete, student mora kolegij ponovo upisati.
|
Nastavne jedinice za Predavanja |
Broj sati |
1.
|
Uvod u paralelno programiranje. Osnovne tehnike i temeljne značajke
|
2 sata |
2.
|
Tipovi paralelizma
|
2 sata |
3.
|
Razvojna okruženja za paralelno programiranje. Ekstenzije programskih jezika za paralelno programiranje.
|
4 sata |
4.
|
Osnovne programske strukture, tipovi podataka, operatori i funkcije. Programi opće namjene za grafički procesor.
|
4 sata |
5.
|
Pisanje programa opće namjene za GPU. GPU nasuprot CPU. Obrada toka podataka. Programski koncepti. GPU tehnike.
|
4 sata |
6.
|
Analiza izvedbe koda. Implementacija programskog jezika za paralelno programiranje na CPU i GPU.
|
4 sata |
7.
|
Analiza primjera: redukcija i sortiranje, algoritmi na matricama, obrada slika, konvolucija, obrada videa, histogrami
|
4 sata |
8.
|
Implementiranje vlastitih algoritama.
|
2 sata |
|
Nastavne jedinice za Laboratorijske vježbe |
Broj sati |
1.
|
Primjeri Open Multiprocessing (OpenMP)
|
4 sata |
2.
|
MPI model. Primjeri MPI programa.
|
6 sati |
3.
|
GPU programiranje sa NVIDIA CUDA programskom ekstenzijom u Cu.
|
6 sati |
4.
|
Realizacija projektnih zadataka
|
14 sati |
|