Anar al contingut

Unitat de processament gràfic

De L'Enciclopèdia, la wikipedia en valencià
Per a atres usos d'este terme vore GPU (desambiguació).
Unitat de processament gràfic.

Una unitat de processament gràfic (de l'anglés graphics processing unit, GPU) o processador gràfic és un coprocessador dedicat al processament de gràfics o operacions de menge flotant, per a allaugerar la càrrega de treball del processador/CPU central en aplicacions com els videojocs o aplicacions 3D interactives. D'esta forma, mentres gran part de lo relacionat en els gràfics es processa en la GPU, l'unitat central de processament (CPU) pot dedicar-se a un atre tipo de càlculs (com l'inteligència artificial o els càlculs mecànics en el cas dels videojocs). En resum, les targetes gràfiques són components d'hardware encarregats de processar i generar les imàgens que es mostren en la pantalla d'una computadora. La seua funció principal és lliberar al processador central (CPU) de les tasques gràfiques, permetent una representació més ràpida i decorreguda de gràfics, animacions i vídeos. Són especialment importants en activitats que requerixen un alt rendiment visual, com a videojocs, disseny 3D, edició multimèdia i simulacions. La GPU implementa certes operacions gràfiques cridades primitives optimisades per al processament gràfic. Una de les primitives més comunes per al processament gràfic en 3D és el antialiasing, que suavisa les vores de les figures per a donar-els un aspecte més realiste. Adicionalment existixen primitives per a dibuixar rectànguls, triànguls, círculs i arcs. Les GPU actualment disponen de gran cantitat de primitives, buscant major realisme en els efectes. Les GPU estan presents en les targetes gràfiques.

Història

Les modernes GPU són descendents dels chips gràfics monolítics de finals de la década de 1970 i 1980. Estos chips tenien soport BitBLT llimitat en la forma de sprites (si és que tenien dit soport del tot), i usualment no tenien soport per a dibuix de figures. Alguns GPU podien eixecutar vàries operacions en una llista de display i podien usar DMA per a reduir la càrrega en el processador amfitrió; un eixemple primerenc és el coprocessador ANTIC usat en l'Atari 800 i l'Atari 5200. Cap a finals de la década de 1980 i principis de la de 1990, els microprocessadors de propòsit general d'alta velocitat varen ser molt populars per a implementar les GPU més alvançades. Moltes targetes gràfiques per a PC i estacions de treball usaven processadors digitals de senyals (DSP per les seues sigles en anglés) tals com la série TMS340 de Texas Instruments, per a implementar funcions de dibuix ràpides i moltes impressores làser contenien un processador d'agranada d'imàgens "PostScript" (un cas especial de GPU) corrent en un processador RISC com l'AMD 29000.

Diferències en la CPU

Si be en un computador genèric no és possible reemplaçar la CPU per una GPU, hui en dia les GPU són molt potents i poden inclús superar la freqüència de rellonge d'una CPU antiga (més d'1.5 gigahercios). Pero la potència de les GPU i el seu veloç ritme de desenroll recent es deuen a dos factors diferents. El primer factor és l'alta especialisació de les GPU, ya que en estar pensades per a desenrollar una sola tasca, és possible dedicar més silici en el seu disseny per a portar a terme eixa tasca més eficientemente. Per eixemple, les GPU actuals estan optimisades per a càlcul en valors en menge flotant, predominants en els gràfics 3D. Per un atre costat, moltes aplicacions gràfiques comporten un alt grau de paralisme inherent, en ser les seues unitats fonamentals de càlcul (vèrtiços i píxels) completament independents. Per tant, és una bona estratègia usar la força bruta en les GPU per a completar més càlculs en el mateix temps. Els models actuals de GPU solen tindre centenars de processadors shader unificats que són capaços d'actuar com vertex shaders, i com pixel shaders, o fragment shaders. D'esta manera, una freqüència de rellonge d'uns 1-1.9 GHz (l'estàndart hui en dia en les GPU de més potència), és molt baixa en comparació a lo oferit per les CPU (3.8-5 GHz en els models més potents, no necessàriament més eficients), es traduïx en una potència de càlcul molt major gràcies a la seua arquitectura en paral. Una de les majors diferències en la CPU estreba en la seua arquitectura. A diferència del processador central, que té una arquitectura de von Neumann, la GPU es basa en el Model Circulant. Este model facilita el processament en paral, i la gran segmentación que posseïx la GPU per a les seues tasques.

Arquitectura de la GPU

Una GPU està altament segmentada, lo que indica que posseïx gran cantitat d'unitats funcionals. Estes unitats funcionals es poden dividir principalment en dos: aquelles que processen vèrtiços (renderizador), i aquelles que processen píxels (rasterizador). Per tant, s'establixen el vèrtiç i el píxel com les principals unitats que maneja la GPU. Adicionalment, i no en menys importància, es troba la memòria. Esta destaca per la seua rapidea, i va a eixercitar un paper rellevant a l'hora d'almagasenar els resultats intermijos de les operacions i les textures que s'utilisen. Inicialment, a la GPU li aplega l'informació de la CPU en forma de vèrtiços. El primer tractament que reben estos vèrtiços es realisa en el vertex shader. Ací es realisen transformacions com la rotació o el moviment de les figures. Despuix d'açò, es definix la part d'estos vèrtiços que es va a vore (clipping), i els vèrtiços es transformen en píxels per mig del procés de rasterisació. Estes etapes no posseïxen una càrrega rellevant per a la GPU. A on sí es troba el principal coll de botella del chip gràfic és en el següent pas: el pixel shader. Ací es realisen les transformacions referents als píxels, tals com l'aplicació de textures. Quan s'ha realisat tot açò, i abans d'almagasenar els píxels en la caché, s'apliquen alguns efectes com el antialiasing, blending i l'efecte boira. Atres unitats funcionals nomenades unitats d'eixida de renderizado (ROP, raster operations pipeline) prenen l'informació guardada en la caché i preparen els píxels per a la seua visualisació. També poden encarregar-se d'aplicar alguns efectes. Despuix d'açò, s'almagasena l'eixida en el búfer de fotogrames. Ara hi ha dos opcions: o prendre directament estos píxels per a la seua representació en un monitor digital, o generar una senyal analògica a partir d'ells, per a monitors analògics. Si és este últim cas, han de passar per un DAC, digital-analog converter, per a ser finalment mostrats en pantalla.

Programació de la GPU

Erro al crear miniatura:
Targeta gràfica MSI GCH 770 Lightning

A l'inici, la programació de la GPU es realisava en cridades a servicis d'interrupció de la BIOS. Despuix d'açò, la programació de la GPU es va escomençar a fer en el llenguage ensamblador específic a cada model. Posteriorment, es va introduir un nivell més entre l'hardware i el software, en la creació d'interfaços de programació d'aplicacions (API) específiques per a gràfics, que varen proporcionar un llenguage més homogéneu per als models existents en el mercat. La primera API usada àmpliament va ser l'estàndart obert OpenGL (Open Graphics Language), despuix del qual Microsoft va desenrollar DirectX. Despuix del desenroll d'estes API, es va decidir crear un llenguage més pròxim al natural utilisat pel programador. Una característica a remarcar de les targetes gràfiques NVIDIA, ellenguage de programació màquina deu estar introduït sobre la base de text unicode 16, donat a l'arquitectura dels microchips que utilisen des de la série GeForce GCH 700.

Càlculs de la GPU per a propòsit general

S'intenta aprofitar la gran potència de càlcul de les GPU per a aplicacions no relacionades en els gràfics, en lo que recentment es ve a cridar GPGPU, o GPU de propòsit general (general purpose GPU, per les seues sigles en anglés).

Les GPU i la química quàntica

la química quàntica és una de les disciplines a on es necessita una gran potència de càlcul. Per supost que han segut reportades vàries aplicacions a on les GPUs han segut utilisades. Vàries d'eixes aplicacions estan relacionades en la solució de les equacions de Kohn-Sham, dins de la teoria de funcionals de la densitat, i la solució de les equacions d'Hartree-Fock.[1] També han segut reportades aplicacions relacionades en métodos basats en la funció d'ona que estimen la correlació electrònica,[2] o m. wikipedia. org/wiki/Energ%C3%ADa_de_ionizaci%C3%B3nenergies d'ionisació.[3][4] La potència de les GPUs s'ha evidenciat en aplicacions relacionades en el model d'àtoms en molèculas.[5]

Vore també

Referències

  1. ↑ I. S. Ufimtsev and T. J. Martinez. Graphical Processing Units for Quàntum Chemistry. Computing in Science and Engineering, 10, 26-34 (2008)doi. org/10.1109/MCSE.2008.148DOI:10.1109/MCSE.2008.148
  2. ↑ Javier Carmona-Espíndola, Isaías Alcalde-Segon, Rubicelia Vargas and Jorge Garza. Many-Body Perturbation Theory to Second Order Applied on Confined Helium Like Atoms.
    • In COMPUTATIONAL AND EXPERIMENTAL CHEMISTRY: Developments and applications. CRC Press, New Jersey, 2013.
  3. ↑ Erwin García-Hernández, Cecilia Díaz-García, Rubicelia Vargas and Jorge Garza. Implementation of the electron propagator to second order on GPUs to estimate the ionization potentials of confined atoms. J. Phys. B: At. Mol. Opt. Phys. 47 185007 (7pp) (2014). doi. org/10.1088/0953-4075/47/18/185007DOI:10.1088/0953-4075/47/18/185007,
  4. ↑ Erwin García-Hernández, Cecilia Díaz-García, Rubicelia Vargas and Jorge Garza. Four-index integral transformation in many-body perturbation theory and electron propagator to second order on GPUs for confined atoms. AIP Conf. Proc. 1558 1528-1531 (2013).doi. org/10.1063/1.4825814DOI:10.1063/1.4825814
  5. ↑ Raymundo Hernández-Escampe, Sol-Milena Mejía-Chica, Andy D. Zapata-Escobar, Alfredo Guevara-García, Apolinar Martínez-Melchor, Juliol-M. Hernández-Pérez, Rubicelia Vargas, and Jorge Garza. Grid-Based Algorithm to Search Critical Points, in the Electron Density, Accelerated by Graphics Processing Units. Journal of Computational Chemistry. 35 2272-2278 (2014).wiley. com/doi/10.1002/jcc.23752/abstract DOI:10.1002/jcc.23752

Enllaços externs