XSLaren edukia

Errendimendu Handiko Prozesadoreak

Ikastegia
Informatika Fakultatea
Titulazioa
Informatikaren Ingeniaritzako Gradua
Ikasturtea
2022/23
Maila
X
Kreditu kopurua
6
Hizkuntzak
Gaztelania
Euskara

IrakaskuntzaToggle Navigation

Orduen banaketa irakaskuntza motaren arabera
Irakaskuntza motaIkasgelako eskola-orduakIkaslearen ikasgelaz kanpoko jardueren orduak
Magistrala4040
Laborategiko p.2050

Irakaskuntza-gidaToggle Navigation

HelburuakToggle Navigation

Ikasgaia ikastearen emaitzak:



1. Segmentazio aurreratua (desordena/desordena eredua), prozesadore supereskalarren arkitektura eta jauzien iragarpen dinamikoa ulertzea.

2. Hari eta nukleo anitzeko prozesadoreen arkitektura ulertzea.

3. Memoria partekatuen MIMD sistemen datuen koherentzia eta prozesuen sinkronizazioa menderatzea

4. Bektore-prozesadore baten arkitektura (SIMD) eta bektore-prozesamendua ulertzea. Aplikazio bektorialak sortzea, AVX512 intrinsics erabiliz.

5. GPU-en arkitektura (SIMD) ulertzea. GPU-etarako aplikazioak sortzea, CUDA erabiliz.

Irakasgai-zerrendaToggle Navigation

1. Ziklo anitzeko segmentazio aurreratua

1.1. Sarrera.

1.2. Desordena/desordena exekuzio-eredua.

1.3. Tomasulo kontrol-unitatea: erreserba-guneak.

1.4. Memoria unitate funtzionala.

1.5. Berrordenatze-bufferra; salbuespenen tratamendu zehatza.

1.6. Prozesadore supereskalarrak.

1.7. Jauzien iragarpen dinamikoa; espekulazioa.



2. MIMD arkitekturak: memoria partekatua

2.1. Sarrera. Hari anitzeko sistemak (multithreading) eta nukleo anitzeko sistemak (SMP).

2.2. Datuen koherentzia: snoopy kontrolagailuak.

2.3. Prozesuen sinkronizazioa: agindu eta prozedura atomikoak.

2.4. Begizten paralelizazioa: dependentzien analisia.

2.5. Laborategia: OpenMP.



3. SIMD arkitekturak: bektore-prozesamendua eta prozesamendu grafikoa (GPU - CUDA)

3.1. Sarrera.

3.2. Bektoreak prozesatzeko arkitekturak. Bektore-kodea sortzeko teknikak. Laborategia: bektore-kodea, AVX512 aginduetarako intrinsics funtzioak.

3.3. Prozesadore grafikoak. GPU-en arkitektura.

3.4. GPU-ak programatzeko tresnak: CUDA.

3.5. CUDA-ren programazio-eredua.

3.6. Errendimendua hobetzeko jarraibideak.

3.7. Proiektua: aplikazio bat paralelizatzea GPU batean exekutatzeko. Errendimenduaren analisia.

MetodologiaToggle Navigation

Ikasgaia aurrez aurreko bi jarduera moten bidez irakasten da: alde batetik teoria eskolak eta ariketa eskolak, eta, bestetik, ikasitakoa praktikan jartzeko balioko duten laborategi-saioak eta proiektu/praktika bat. Irakaskuntza prozesuan metodologia aktiboak eta ikasketa kooperatiboa erabiliko dira: talde-lanak egingo dira, ariketen ebazpenak denon artean eztabaidatuko dira, etab. Helburua ikasleen motibazioa eta parte hartzea handitzea da.

Ebaluazio-sistemakToggle Navigation

Bi aukera daude ikasgaia gainditzeko



- Ebaluazio/ikasketa jarraitua



Hasieran lehenetsitako ebaluazio modua da, eta bakarrik ohiko deialdirako. Parte-hartze aktibo eta jarraitua eskatzen da: eskoletara eta laborategietara etortzea (salbuespenak salbuespen), ariketak/lanak entregatzea, eta ebaluazio-probak, praktikak eta abar egitea. Baldintza horiek bete ezean, ebaluazio globalera igaro beharko da



Honela ebaluatuko da ikasgaia modu honetan:

1. - 3.2. gaiak 6 puntu azterketa (5) + lan praktikoak (1)

3.3. - 3.7. gaiak CUDA proiektua (4)



Azterketan 4ko bat baino gutxiago lortzen bada, errepikatu beharko da urtarrilean.

Ikasgaia gainditzeko, nota osoa 5 edo gehiago izateaz gain, proba idatzian zein lan praktikoan eta CUDA proiektuan gutxienez 4 puntu (10etik) lortu behar dira.





-Ebaluazio globala



Ikastaroa aurreko moduan jarraitu ezin edo nahi ez bada, ebaluazio globala aukeratu daiteke. Kasu horretan, honela ebaluatuko da ikasgaia:

Azterketa idatzia (gai guztiak) 7,5 puntu

Lan praktikoa (CUDA) 2,5 puntu



Ikasgaia gainditzeko, nota osoa 5 edo gehiago izateaz gain, proba idatzian zein lan praktikoan gutxienez 4 puntu (10etik) lortu behar dira.

Nahitaez erabili beharreko materialaToggle Navigation

Nahitaezko materiala, gardenkiak edota irakurgaiak, eGelan izango da.

BibliografiaToggle Navigation

Oinarrizko bibliografia

Hennessy J.L., Patterson D.A. Computer architecture: a quantitative approach. (6. ed.). Morgan Kaufmann, 2017. [ Konputagailuen arkitektura. Hurbilketa kuantitatibo bat. (4 ed.). UPV/EHU, 2009. ]



Chapman B. et al. Using OpenMP. The MIT Press, 2008



http://openmp.org/



http://software.intel.com/sites/landingpage/IntrinsicsGuide/



Kirk D.B. et al. Programming massively parallel processors. 3. ed. Elsevier, 2017.



https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html

Gehiago sakontzeko bibliografia

van der Pas, R. et al. Using OpenMP: The next step. The MIT Press, 2017.

Ortega J. et al. Arquitectura de Computadores. Thomson, 2005.

Sorin D.J. et al. A primer on memory consistency and cache coherence. Morgan & Claypool Pub., 2011.

Midkiff S.P. Automatic parallelization. An overview of fundamental compiler techniques. Morgan & Claypool Pub., 2012.

http://top500.org/


Aldizkariak

Arloko aldizkariak eta fabrikatzaileen webguneak: IEEE Computer, IEEE Micro, BYTE, www.top500.org, https://developer.nvidia.com/cuda-zone,...

5., 6. eta salbuespenezko deialdien epaimahaiaToggle Navigation

  • ARREGUI URIARTE, MARIA OLATZ
  • ARRUABARRENA FRUTOS, AGUSTIN
  • PASCUAL SAIZ, JOSE ANTONIO

TaldeakToggle Navigation

16 Teoriakoa (Gaztelania - Arratsaldez)Erakutsi/izkutatu azpiorriak

Egutegia
AsteakAstelehenaAstearteaAsteazkenaOstegunaOstirala
1-15

15:30-17:00

14:00-15:30

Irakasleak

16 Laborategiko p.-1 (Gaztelania - Arratsaldez)Erakutsi/izkutatu azpiorriak

Egutegia
AsteakAstelehenaAstearteaAsteazkenaOstegunaOstirala
1-15

17:00-18:30

Irakasleak

31 Teoriakoa (Euskara - Goizez)Erakutsi/izkutatu azpiorriak

Egutegia
AsteakAstelehenaAstearteaAsteazkenaOstegunaOstirala
1-15

10:30-12:00

09:00-10:30

Irakasleak

31 Laborategiko p.-1 (Euskara - Goizez)Erakutsi/izkutatu azpiorriak

Egutegia
AsteakAstelehenaAstearteaAsteazkenaOstegunaOstirala
1-15

12:00-13:30

Irakasleak