Vés al contingut

Targetes Gràfiques i Acceleradors

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

Altres

Hores setmanals

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

Competències

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.
  • 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.
  • 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
    0h

    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àsic

    Capacitats prèvies

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