Arhitekture i aplikacije računalnih sustava visokih performanci

Opis predmeta

Predmet upoznaje studente s osnovnim konceptima paralelnih računalnih sustava visokih performanci te pripadajućih aplikacija visokih performanci. Predmet objašnjava vrste paralelizma i metode iskorištavanja u oblikovanju aplikacija. Zatim objašnjava modele izvršavanja u paralelnim sustavima visokih performanci te metode oblikovanja i optimizacija aplikacija za takve sustave.

Ishodi učenja

  1. Definirati građu, arhitekturu i komponente računalnih sustava visokih performanci
  2. Procijeniti i analizirati izvođenje aplikacija u računalnim sustavima visokih performanci
  3. Primijeniti metode oblikovanja i optimizacije aplikacija u računalnim sustavima visokih performanci
  4. Analizirati aplikacije i performance aplikacija s obzirom na različite kriterije
  5. Kreirati metodologiju optimizacije aplikacija s obzirom na različite kriterije
  6. Usporediti metode implementacije komponenti računalnog sustava i aplikacija za sustave visokih performanci
  7. Odabrati metode implementacije komponenti računalnog sustava i aplikacija za sustave visokih performanci

Oblici nastave

Predavanja

Predavanja se održavaju svaki tjedan (po 3 sata). Objašnjavaju se teorijske osnove o arhitekturama i aplikacijama računalnih sustava visokih performanci, a također i praktični programski primjeri.

Samostalni zadaci

Studenti rješavaju jednostavnije probleme pišući HPC orijentirane programe.

Laboratorij

Studenti pišu, testiraju i izvode HPC programe koristeći jezike i arhitekture namjenjene za HPC programiranje.

Način ocjenjivanja

Kontinuirana nastava Ispitni rok
Vrsta provjere Prag Udio u ocjeni Prag Udio u ocjeni
Laboratorijske vježbe 0 % 12 % 0 % 12 %
Međuispit: Pismeni 0 % 38 % 0 %
Završni ispit: Pismeni 0 % 50 %
Ispit: Pismeni 0 % 68 %
Ispit: Usmeni 20 %
Napomena / komentar

Sve laboratorijske vježbe moraju biti uredno obavljene da bi se predmet mogao položiti.

Tjedni plan nastave

  1. Višejezgreni i mnogojezgreni sustavi
  2. Dijeljeni višeprocesoriski sustavi. memorijska koherencija, Višejezgreni i mnogojezgreni sustavi
  3. Prospojne mreže (hiperkocka. prospoj miješanjem. pravilna mreža. poprečni prospoj), Dijeljeni višeprocesoriski sustavi. memorijska koherencija
  4. Zakon snage, SIMD, vektorsko procesiranje
  5. SIMD, vektorsko procesiranje
  6. SIMD, vektorsko procesiranje, GPU (grafičke procesorske jedinice), koprocesori
  7. Primjeri instrukcijskih skupova i arhitektura tipova SIMD i MIMD
  8. Međuispit
  9. Vektorski procesori i grafički procesori
  10. Vektorski procesori i grafički procesori
  11. Integrirana prospojna mreža. heterogene ubrzane arhitekture, Alternativne arhitekture (VLIW. EPIC. akceleratori. procesori posebne namjene)
  12. Modeli za paralelno izvođenje programa
  13. (en) Power usage and management
  14. (en) Power usage and management
  15. Završni ispit

Studijski programi

Sveučilišni diplomski
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Jezgreni predmeti profila (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)

Literatura

John L. Hennessy, David A. Patterson (2017.), Computer Architecture, Morgan Kaufmann
Yan Solihin (2015.), Fundamentals of Parallel Multicore Architecture, CRC Press
Ruud van der Pas, Eric Stotzer, Christian Terboven (2017.), Using OpenMP—The Next Step, MIT Press
Rob Farber (2011.), CUDA Application Design and Development, Elsevier
William Gropp, Ewing Lusk, Anthony Skjellum (2014.), Using MPI, MIT Press

Laboratorijske vježbe

Za studente

Izvedba

ID 222466
  Ljetni semestar
5 ECTS
R1 Engleski jezik
R1 E-učenje
45 Predavanja
0 Seminar
0 Auditorne vježbe
12 Laboratorijske vježbe
0 Konstrukcijske vježbe

Ocjenjivanje

90 izvrstan
80 vrlo dobar
65 dobar
50 dovoljan