Targetes Gràfiques i Acceleradors

Esteu aquí

Crèdits
6
Tipus
Optativa
Requisits
Aquesta assignatura no té requisits, però té capacitats prèvies
Departament
AC
En aquesta assignatura els estudiants estudiaran en profunditat el funcionament d'una targeta gràfica actual. Fent especial èmfasi en els seus punts forts i les seves limitacions arquitectónicas.También s'estudiarà la creixent relació d'aquests dispositius amb la Supercomputació i els nous acceleradors que estan apareixent al mercat.

Professorat

Responsable

  • Agustín Fernández Jiménez ( )

Altres

  • Daniel Jimenez Gonzalez ( )
  • Eduard Ayguadé Parra ( )

Hores setmanals

Teoria
2
Problemes
0
Laboratori
2
Aprenentatge dirigit
0
Aprenentatge autònom
6

Competències

Competències Tècniques

Competències tècniques comunes

  • CT1 - Demostrar coneixement i comprensió de fets essencials, conceptes, principis i teories relatives a la informàtica i a les seves disciplines de referència.
    • CT1.1B - Demostrar coneixement i comprensió dels conceptes fonamentals de la programació i de l'estructura bàsica d'un computador. CEFB5. Coneixement de l'estructura, funcionament i interconnexió dels sistemes informàtics, i dels fonaments de la seva programació.
  • CT6 - Demostrar coneixement i comprensió del funcionament intern d'un computador i del funcionament de les comunicacions entre ordinadors.
    • CT6.2 - Demostrar coneixement, comprensió i capacitat d'avaluar l'estructura i l'arquitectura dels computadors, i els components bàsics que els componen.
    • CT6.3 - Demostrar coneixement de les característiques, funcionalitats i estructura dels Sistemes Operatius que en permeti un ús adequat, administració i disseny, així com la implementació d'aplicacions basades en els seus serveis.
  • CT7 - Avaluar i seleccionar plataformes de producció hardware i software per a l'execució d'aplicacions i de serveis informàtics.
    • CT7.1 - Demostrar coneixement de les mètriques de qualitat i saber-les utilitzar.
    • CT7.2 - Avaluar sistemes hardware/software en funció d'un criteri de qualitat determinat.

Competències Transversals

Comunicació eficaç oral i escrita

  • G4 [Avaluable] - Comunicar de forma oral i escrita amb altres persones coneixements, procediments, resultats i idees. Participar en debats sobre temes propis de l'activitat de l'enginyer tècnic en informàtica.
    • G4.2 - Utilitzar estratègies per a preparar i dur a terme les presentacions orals i redactar textos i documents amb un contingut coherent, una estructura i un estil adequats i un bon nivell ortogràfic i gramatical. Fer una presentació oral davant d'un auditori restringit. Triar adequadament els continguts, l'estil, la temporització i el format de la presentació. Ser capaç de comunicar-se d'una manera efectiva amb l'usuari en un llenguatge no tècnic, i de comprendre les seves necessitats.

Competències Tècniques de cada especialitat

Especialitat enginyeria de computadors

  • CEC2 - Analitzar i avaluar arquitectures de computadors incloent plataformes paral·leles i distribuïdes, i desenvolupar i optimitzar software per a aquestes plataformes.
    • CEC2.1 - Analitzar, avaluar, seleccionar i configurar plataformes hardware per al desenvolupament i l'execució d'aplicacions i serveis informàtics.
    • CEC2.2 - Programar considerant l'arquitectura hardware, tant en assemblador com en alt nivell.
  • CEC3 - Desenvolupar i analitzar hardware i software per a sistemes encastats i/o de molt baix consum.
    • CEC3.1 - Analitzar, avaluar i seleccionar les plataformes hardware i software més adients per al suport d'aplicacions encastades i de temps real.

Especialitat computació

  • CCO2 - Desenvolupar de forma efectiva i eficient els algorismes i el software apropiats per a resoldre problemes complexos de computació.
    • CCO2.6 - Dissenyar i implementar aplicacions gràfiques, de realitat virtual, de realitat augmentada i videojocs.
  • CCO3 - Desenvolupar les solucions informàtiques que, considerant l'entorn d'execució i l'arquitectura del computador sobre el qual s'executen, aconsegueixin el millor rendiment.
    • CCO3.1 - Implementar codi crític seguint criteris de temps d'execució, eficiència i seguretat.
    • CCO3.2 - Programar considerant l'arquitectura hardware, tant en asemblador com en alt nivell.

Objectius

  1. Conèixer en profunditat el funcionament d'una targeta gràfica
    Competències relacionades: CT7.2, CEC2.2, CEC3.1, CCO3.2,
  2. Conèixer les limitacions d'una targeta gràfica en l'execució d'aplicacions de propòsit general.
    Competències relacionades: CEC2.1, CT7.1, CT7.2,
  3. Conèixer les tècniques bàsiques per implementar aplicacions de propòsit general en una targeta gràfica.
    Competències relacionades: G4.3, CT6.3, G4.2, CEC2.2, CCO3.1, CCO3.2, G7.3, CT1.1B,
  4. Conèixer les possibilitats que ofereix una targeta gràfica per implementar aplicacions gràfiques no interactives.
    Competències relacionades: G4.3, CCO2.6, CT6.3, G4.2, CEC2.2, CCO3.1, CCO3.2, G6.2, G7.3,
  5. Donats uns requeriments de rendiment, avaluar quina és la millor alternativa hardware per assolir-los.
    Competències relacionades: CEC2.1, CT6.3, CT7.1, CT7.2, CT6.2, CEC3.1, CT1.1B,

Continguts

  1. Tema 1: Introducció
    - Història de les Targetes gràfiques

    - El pipeline gràfic
  2. TEMA 2: Components fonamentals d'una targeta gràfica
    - Shaders
    - Rasterització
    - Textures
    - Antialiasing
    - Z-Buffer
  3. TEMA 3: Exemples Comercials
    - Evolució Històrica del hardware gràfic
    - Exemples Clàssics
    - Exemples Actuals
  4. TEMA 4: Computació d'Altes Prestacions
    - CPU vs GPU
    - Supercomputació i GPUs
    - Paradigmes de computació / paral·lelisme
    - Sistemes MultiGPU
    - Acceleradors
  5. TEMA 5: Aspectes Software
    - GPGPU
    - CUDA
    - OpenGL
    - DirectX
    - Shader Assembly and Shading Languages
  6. TEMA 6: Aspectes Tecnològics
    - Refrigeració
    - Overclocking
    - Benchmarking
    - Busos
    - Connectors

Activitats

Activitat Acte avaluatiu


Examen Final

És un examen no presencial. Al voltant de la setmana 13 es lliurarà l'examen en horari de classe. Els estudiants tenen 2 setmanes per realitzar l'examen. Cada pregunta d'examen té un espai limitat per respondre. Les respostes han de ser concises, clares i correctes.
Objectius: 1 2 3 4 5
Setmana: 13
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
30h

CUDA

Es presentaran les eines bàsiques que ofereix CUDA per a la programació de targetes gràfiques.
Objectius: 3
Continguts:
Teoria
6h
Problemes
0h
Laboratori
14h
Aprenentatge dirigit
0h
Aprenentatge autònom
14h

Pipeline gràfic

Descripció exhaustiva del pipeline gràfic.
Objectius: 1 2
Continguts:
Teoria
2h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
5h

Exemples Comercials

Es presentaran diversos exemples de targetes gràfiques comercials, amb l'objectiu d'entendre el disseny actual de les mateixes.
Objectius: 1 2 5
Continguts:
Teoria
2h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

GPGPU

Descriure les tècniques clàssiques de GPGPU i com les seves limitacions han influït en el disseny de les noves arquitectures i llenguatges de programació.
Objectius: 2 3
Continguts:
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

OpenCL

Descripció del llenguatge.
Objectius: 3
Continguts:
Teoria
4h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Projecte

Implementació d'un projecte software amb GPUs.
Objectius: 1 2 3 4 5
Continguts:
Teoria
0h
Problemes
0h
Laboratori
10h
Aprenentatge dirigit
0h
Aprenentatge autònom
20h

Components fonamentals d'una targeta gràfica

Es presentaran alguns elements fonamentals d'una targeta gràfica: unitat de textures, memòria, z buffer, ...
Objectius: 1 2 3 4
Continguts:
Teoria
4h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
5h

CPUs vs GPUs

Es presentaran les diferències essencials entre una CPU i una GPU.
Objectius: 1 5
Continguts:
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Shading Languages

Descripció de les característiques bàsiques dels Llenguatges de programació dels shaders, en alt i baix nivell.
Objectius: 1 3 4
Continguts:
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Història

Visió històrica de l'evolució de les targetes gràfiques, des del primer PC fins avui.
Objectius: 1
Continguts:
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

Xerrades

Durant el curs, i depenent de la disponibilitat, s'impartiran xerrades de temes afins.
Objectius: 1 2 3 4 5
Teoria
4h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

Metodologia docent

Hi ha dos tipus de classes: classes de teoria i de laboratori.

Les primeres setmanes no hi haurà classes de laboratori.

Les classes de teoria seran expositives per part del professor, incloent conceptes teòrics, exemples pràctics i resolució d'exercicis formatius.

Les classes de laboratori seran de dos tipus: les primeres classes seran dirigides, orientades a conèixer les eines i els llenguatges de programació utilitzats, les següents classes estaran orientades a la realització d'un petit projecte.

A més, depenent de les disponibilitats de cada curs, es faran conferències a càrrec d'experts.

Mètode d'avaluació

50% examen NO presencial
50% Laboratori

El Examen NO presencial es realitzarà a final de curs. L'enunciat es lliurarà a classe i es retornarà resolt passats uns 10 dies. És una prova individual que s'ha de fer a mà en els fulls d'examen lliurades pel professor.

La nota de laboratori s'obté a partir de les notes de seguiment de les sessions de pràctiques que elabora cada professor i de l'avaluació del projecte. Per avaluar el projecte els estudiants hauran de lliurar una memòria escrita.

Bibliografia

Bàsica:

Capacitats prèvies

Coneixements bàsics sobre arquitectura de computadors.
Coneixements bàsics sobre gràfics.