Sie sind auf Seite 1von 14

Unidad de procesamiento grfico

La unidad de procesamiento grfico o GPU (acrnimo del ingls graphics processing


unit) es un coprocesador dedicado al procesamiento de grficos u operaciones de coma
flotante, para aligerar la carga de trabajo del procesador central en aplicaciones como los
videojuegos y o aplicaciones 3D interactivas. De esta forma, mientras gran parte de lo
relacionado con los grficos se procesa en la GPU, la unidad central de
procesamiento (CPU) puede dedicarse a otro tipo de clculos (como la inteligencia
artificial o los clculosmecnicos en el caso de los videojuegos)
Una unidad de procesamiento grfico (GPU), tambin a veces llamado unidad de
procesamiento visual (VPU), es un organismo especializado del circuito
electrnico diseado para manipular rpidamente y alterar la memoria para acelerar la
creacin de imgenes en una memoria intermedia de trama destinada a la salida a una
pantalla
zado por Nvidia en 1999, que comercializa la GeForce 256 como "primera" GPU "del
mundo, o unidad de procesamiento grfico, un procesador de un solo chip integrado con la
transformacin, la iluminacin, la configuracin de tringulos / recorte, y motores de
renderizado que son capaz de procesar un mnimo de 10 millones de polgonos por
segundo
Diferencias con la CPU[editar]
Si bien en un computador genrico no es posible reemplazar la CPU por una GPU, hoy en
da las GPU son muy potentes y pueden incluso superar la frecuencia de reloj de una CPU
antigua (ms de 500MHz). Pero la potencia de las GPU y su veloz ritmo de desarrollo
reciente se deben a dos factores diferentes. El primer factor es la alta especializacin de
las GPU, ya que al estar pensadas para desarrollar una sola tarea, es posible dedicar
ms silicio en su diseo para llevar a cabo esa tarea ms eficientemente. Por ejemplo, las
GPU actuales estn optimizadas para clculo con valores en coma flotante, predominantes
en los grficos 3D.
Por otro lado, muchas aplicaciones grficas conllevan un alto grado
de paralelismo inherente, al ser sus unidades fundamentales de clculo (vrtices y pxeles)
completamente independientes. Por tanto, es una buena estrategia usar la fuerza bruta en
las GPU para completar ms clculos en el mismo tiempo. Los modelos actuales de GPU
suelen tener cientos de procesadores shader unificados que son capaces de actuar
como vertex shaders, y como pixel shaders, o fragment shaders. De este modo, una
frecuencia de reloj de unos 600 MHz-1 GHz (el estndar hoy en da en las GPU de ms
potencia), es muy baja en comparacin con lo ofrecido por las CPU (3,8-4 GHz en los
modelos ms potentes, no necesariamente ms eficientes), se traduce en una potencia de
clculo mucho mayor gracias a su arquitectura en paralelo.
Una de las mayores diferencias con la CPU estriba en su arquitectura. A diferencia del
procesador central, que tiene una arquitectura de von Neumann, la GPU se basa en el
Modelo Circulante. Este modelo facilita el procesamiento en paralelo, y la gran
segmentacin que posee la GPU para sus tareas
Arquitectura de la GPU[editar]
Una GPU est altamente segmentada, lo que indica que posee gran cantidad de unidades
funcionales. Estas unidades funcionales se pueden dividir principalmente en dos: aqullas
que procesan vrtices, y aqullas que procesan pxeles. Por tanto, se establecen el vrtice
y el pxel como las principales unidades que maneja la GPU.
Adicionalmente, y no con menos importancia, se encuentra la memoria. sta destaca
por su rapidez, y va a jugar un papel relevante a la hora de almacenar los resultados
intermedios de las operaciones y las texturas que se utilicen.
Inicialmente, a la GPU le llega la informacin de la CPU en forma de vrtices. El primer
tratamiento que reciben estos vrtices se realiza en el vertex shader. Aqu se realizan
transformaciones como la rotacin o el movimiento de las figuras. Tras esto, se define la
parte de estos vrtices que se va a ver (clipping), y los vrtices se transforman en pxeles
mediante el proceso de rasterizacin. Estas etapas no poseen una carga relevante para la
GPU.
Donde s se encuentra el principal cuello de botella del chip grfico es en el siguiente paso:
el pixel shader. Aqu se realizan las transformaciones referentes a los pxeles, tales como
la aplicacin de texturas. Cuando se ha realizado todo esto, y antes de almacenar los
pxeles en la cach, se aplican algunos efectos como el antialiasing, blending y el efecto
niebla.
Otras unidades funcionales llamadas ROP toman la informacin guardada en la cach y
preparan los pxeles para su visualizacin. Tambin pueden encargarse de aplicar algunos
efectos. Tras esto, se almacena la salida en el frame buffer. Ahora hay dos opciones: o
tomar directamente estos pxeles para su representacin en un monitor digital, o generar
una seal analgica a partir de ellos, para monitores analgicos. Si es este ltimo caso,
han de pasar por un DAC, Digital-Analog Converter, para ser finalmente mostrados en
pantalla.
Programacin de la GPU[editar]
Al inicio, la programacin de la GPU se realizaba con llamadas a servicios
de interrupcin de la BIOS. Tras esto, la programacin de la GPU se empez a hacer en
el lenguaje ensamblador especfico a cada modelo. Posteriormente, se introdujo un nivel
ms entre el hardware y el software, con la creacin de interfaces de programacin de
aplicaciones(API) especficas para grficos, que proporcionaron un lenguaje ms
homogneo para los modelos existentes en el mercado. La primera API usada
ampliamente fue el estndar abierto OpenGL (Open Graphics Language), tras el cual
Microsoft desarroll DirectX.
Tras el desarrollo de API, se decidi crear un lenguaje ms natural y cercano al
programador.
CMO SE ACELERAN LAS APLICACIONES CON LAS GPUS
El clculo acelerado en la GPU ofrece un rendimiento sin precedentes ya que traslada las
partes de la aplicacin con mayor carga computacional a la GPU y deja el resto del cdigo
ejecutndose en la CPU. Desde la perspectiva del usuario, las aplicaciones simplemente se
ejecutan ms rpido.


LA CPU FRENTE A GPU
Una forma sencilla de entender la diferencia entre la CPU y la GPU es comparar la forma en
que procesan las tareas. Una CPU consta de unos cuantos ncleos optimizados para el
procesamiento secuencial de las instrucciones, mientras que la GPU se compone de miles de
ncleos, ms pequeos y eficientes, diseados para manejar mltiples tareas de forma
simultnea.

Las GPUs poseen miles de ncleos que procesan las cargas de trabajo de forma paralela y
muy eficiente.


La era pre-GPU
Las cosas han cambiado mucho desde que los ordenadores domsticos empezaron a
implantarse en nuestros hogares, all por la dcada de los 80. El hardware se sustenta
sobre las mismas bases de la arquitectura von Neumann, si bien sta ha evolucionado de
forma muy notable y los sistemas actuales son ahora mucho ms complejos.
Arquitectura de Von Neumann (va Wikipedia)
El tro de componentes que plante John von Neumann eran tres: ALU, memoria y
entrada/salida, refirindose a mecanismos que procesan, almacenan y reciben/envan la
informacin, respectivamente. Interpretando la arquitectura en un equipo actual equivaldra
a tener slo un procesador, un disco, un teclado y una pantalla. Evidentemente un sistema
moderno est formado por muchos ms elementos, y entre ellos la tarjeta grfica se ha
convertido en uno de los actuales componentes fundamentales.
Los orgenes
En los primeros ordenadores el procesador central CPU, central processing unit era
el encargado de gestionar y procesar todo tipo de informacin. Desde los datos que el
usuario quera operar hasta por supuesto el sistema operativo, y con l su interfaz.
Si bien aquellos primeros sistemas utilizaban interfaces basadas en texto, con la llegada
de las primeras interfaces grficas el nivel de exigencia creci no slo en el propio
sistema operativo, si no tambin en muchas de las aplicaciones que empezaban a surgir
por la poca. Programas CAD o videojuegos, por ejemplo, requeran muchos ms recursos
para funcionar correctamente.
Llegados a este punto, los diseadores de sistemas se basaron en un componente que ya
exista para evolucionarlo y hacerlo crecer. Los coprocesadores matemticos o FPU
floating-point unit eran utilizados en muchos sistemas para acelerar el procesamiento
de datos. Pueden entenderse como un segundo procesador, si bien algunas de las
diferencias respecto de las CPU son muy claras: no pueden tener acceso a los datos
directamente (debe ser la CPU la que gestione este apartado) o ejecutan un juego de
instrucciones mucho ms sencillo pensado para tratar datos en coma flotante.
CPU Intel 386 y coprocesador Intel 387 (va Wikipedia)
La definicin de procesador de propsito general ya la habamos utilizado
anteriormente. Este tipo de procesadores son los ms comunes y la CPU es el ejemplo
ms habitual. Utilizan registros y juegos de instrucciones genricos que pueden hacer
operaciones de lo ms diverso. Un dato importante para el tema que vamos a tratar es
que las CPU no operaban directamente con datos en punto flotante, si no que
realizaban una conversin previa que implicaba un gasto en recursos y, por tanto, tiempo.
Por ello, los coprocesadores matemticos eran importantes ya que ellos s podan
procesar este tipo de datos.
Los coprocesadores matemticos fueron el punto
de partida para, aos ms tarde, el nacimiento de
las GPU
Con la llegada de las por entonces nuevas interfaces se vio que muchas de las
operaciones grficas que procesaba la CPU se podan plantear como operaciones
de punto flotante. La pantalla es, al fin y al cabo, una matriz de NxM pxeles en la que
cada uno de ellos requiere de una alta carga matemtica para generar el color concreto a
mostrar en cada momento. Varias operaciones por segundo para cada pxel, y varios miles
para procesar todos los pxeles de la pantalla.
Las exigencias continuaron creciendo, y los sistemas de la poca disponan de CPU y
una FPUoptativa que termin convirtindose en fundamental: los coprocesadores
matemticos evolucionaron hacia las GPU, al ser el componente ms eficiente a la hora
de procesar y determinar el aspecto grfico de todo tipo de software.
Las primeras tarjetas grficas
Los coprocesadores matemticos siguieron evolucionando y mejorando, y empezaron a
montarse en tarjetas individuales. Mediante este formato podan disponer de un mayor
espacio para crear chips ms grandes, con ms transistores y circuitera y mejores
conexiones energticas, que eran capaces de ofrecer una mayor capacidad de proceso.
NVidia GeForce 256 en su anlisis en AnandTech en 1.999
No fue hasta 1.999 cuando NVidia acu el trmino GPU, Graphics Processing Unit,
para sustituir a las anteriores tarjetas de vdeo. Tras unas exitosas RIVA TNT2 presentaron
la NVidia GeForce 256, y para promocionarla pusieron gran nfasis en las posibilidades
grficas que aportaba a nuestro equipo. Los videojuegos, ganando cada vez ms
adeptos, fueron una de las claves para que los diseadores de las GPU fueran
incrementando su rendimiento ao tras ao.
Ms unidades de proceso que CPU, pero
ms sencillas: la arquitectura de las GPU
Los coprocesadores primero y las tarjetas grficas despus plantearon una arquitectura
hardware muy diferente de las utilizadas en las CPU. Nos olvidamos de la
conocida x86 ya que los requisitos eran diferentes (operaban diferentes tipos de datos y la
salida de los resultados era el monitor, no la memoria), y por ello el diseo deba ser otro.
Arquitectura Kepler de NVidia
En una GPU tambin tendremos unidades de proceso (tradicionalmente Unified
Shaders o Stream Processors), memoria (que hace las veces de memoria RAM, como un
sistema de almacenamiento temporal para apoyar al procesamiento de los datos)
y entrada/salida. Las GPU tambin tienen sus propias libreras (las ms conocidas son
OpenGL y DirectX) para que los desarrolladores programen el software.
Una GPU contiene cientos o miles de pequeos
procesadores, con lo que su potencial para
procesar algoritmos paralelos es muy superior al de
unaCPU
Un aspecto fundamental de las actuales GPU son esos Unified Shaders, los pequeos
procesadores. Estos son muy sencillos (ejecutan un conjunto de instrucciones muy
concreto que realizan operaciones aritmticas bsicas) pero su crecimiento en cantidad en
cada nueva generacin es significativo: la GeForce 256 de 1.999 tena un total de 4,
mientras en las actuales tarjetas grficas lo habitual es encontrarnos con entre 1.000 y
4.000, aproximadamente. Por ejemplo, NVidia GTX 780 Titiene 2.688 Unified
Shaders y AMD 7990 sube la apuesta a 4.096 (a razn de 2.048 para cada uno de sus dos
ncleos).
Estos Unified Shaders son los que procesan la informacin grfica, y a priori cuantos ms
tengamos ser mejor para la capacidad de proceso de la GPU. Este factor es importante
en videojuegos, pero fundamental para uno de los usos que ms estn creciendo en los
ltimos aos: GPGPU, General-purpose computing on graphics processing units.
GPGPU, presente y futuro de la
computacin
Los sistemas crecen, pero lo hacen debido a lo que tanto los desarrolladores como los
usuarios finales van exigiendo. Los videojuegos y su calidad grfica son la prueba ms
palpable de este incremento en las capacidades de proceso, pero el uso que le damos a
las GPU tambin ha cambiado para adaptarse a otras posibilidades.
SLI de dos NVidia GTX 690
GPGPU es el trmino que se utiliza para designar las tareas de propsito general,
tpicamente pensadas para ser procesadas en una CPU, pero que se aprovechan del
potencial de la GPUpara ejecutarse en ella. Dado que los procesadores grficos son
mucho ms eficientes en cierto tipo de operaciones, los resultados se obtendrn ms
rpidamente.
El problema de la GPGPU es precisamente que no todas las tareas tienen que ser ms
eficientes en una GPU. stas estn especializadas en tareas altamente
paralelizables cuyos algoritmos puedan subdividirse, procesarse por separado para luego
unir los subresultados y tener el resultado final. Tpicamente son problemas cientficos,
matemticos o simulaciones (este tema ya lo tratamos ennuestra entrevista a Manuel
Ujaldn), aunque un ejemplo mucho ms popular es la problemtica deminar Bitcoins.
GPGPU consiste en ejecutar procesos tpicamente
orientados a la CPU, pero en la GPU
Los bitcoins se han ganado la confianza de muchos al ser dinero relativamente fcil de
ganar. Para un usuario final, la tarea para conseguir un bitcoin (o una fraccin suya) es tan
sencilla como ejecutar un programa y esperar. Dependiendo de la capacidad de nuestro
ordenador tardar ms o menos, y podremos obtener beneficios dependiendo del
consumo energtico del equipo. Al fin y al cabo es un problema con base econmica,
donde los beneficios finales dependern de los ingresos (los bitcoinsganados) menos los
gastos (energticos y de tiempo invertido).
Lo que en este caso nos interesa de los bitcoins es la ciencia que hay detrs de ellos. Se
trata de unproblema criptogrfico que hace uso del algoritmo SHA-256. El usuario tendr
que ejecutar este algoritmo sobre mltiples cadenas alfanumricas de forma repetida hasta
que el resultado sobre una de ellas sea vlido, y entonces ganar una fraccin de bitcoin.
A la vista de que minar bitcoins es una tarea altamente paralelizable y basada en
operaciones matemticas bsicas (el algoritmo SHA-256 es pblico y puede consultarse
en Wikipedia; podemos dedicar los ncleos de la GPU para procesar varias cadenas
simultneamente), su clculo a travs deGPGPU es la mejor opcin existente. Existen
mltiples manuales, tutoriales y documentos sobre cmo montar un buen equipo
para bitmining, todos ellos basados en los siguientes principios:
Hacer uso de una muy CPU bsica, si puede ser de tipo ULV Ultra Low Voltage
mejor.
No ms de 2 o 4 GB de memoria RAM.
Un dispositivo de almacenamiento de pequeas dimensiones. Si puede ser SSD para
ahorrar energa, mejor.
Una configuracin de varias tarjetas grficas para usar en GPGPU. Tpicamente se
utiliza CrossFire X de AMD.
Una buena fuente de alimentacin, importante para dotar de energa a tres o cuatro
tarjetas grficas simultneamente.
Por qu AMD? La razn para ello es bastante sencilla: disponen de un mayor nmero
de Stream Processors, de forma que pueden procesar mayor cantidad de informacin
simultneamente.
Una parte del MareNostrum, el supercomputador del BSC
A priori podemos pensar que cuanto ms potente sea una GPU ser mejor para nuestros
intereses. Sin embargo, existe una clave fundamental que es el consumo energtico,
algo que no solemos tener en cuenta pero que es imprescindible a la hora de determinar
los beneficios finales. Tened en cuenta que un equipo de varias GPU trabajando
simultneamente puede alcanzar una potencia cercana a los 1.000 vatios que, operando
las 24 horas del da, supondr un fuerte desembolso econmico.
Las grficas en el entorno domstico
Ya hemos mencionado que el mundo de los videojuegos es el principal impulsor de la
potencia de las tarjetas grficas actuales. Sin embargo, en los ltimos aos estamos
viviendo un importante cambio de rumbo que va a seguir afectando y cambiando el
sector durante los prximos aos. Son las GPUintegradas o IGP (Integrated Graphics
Processor), ya existentes en las CPU tanto de Intel como deAMD en prcticamente todas
sus gamas.

Las IGP nacen tras un estancamiento de los requisitos grficos del software y por el
crecimiento del ecosistema Web: pginas y juegos a travs de un navegador. A da de
hoy slo los juegos ms exigentes y cierto software profesional requieren el uso de
una tarjeta grfica dedicada que, si bien es significativamente ms potente que una IGP,
sta ltima ofrece un rendimiento suficiente para tareas cotidianas. En otras palabras:
sistema operativo, navegador web, ofimtica o software de gestin son aplicaciones cuya
carga grfica es muy baja, y no es necesario tener una dedicada para disfrutar de una
buena experiencia en su uso. Una IGP ser suficiente.
Como referencia vamos a remitirnos a uno de los anlisis que hemos realizado en un
ordenador porttil. Por ejemplo el del Alienware 14 que publicamos el pasado mes de
octubre, y donde realizamos una comparativa con el potencial de su chip grfico dedicado
(NVidia GTX 765M) e integrado (Intel HD Graphics 4600), ambos de gama media.
Los resultados al completo los podis leer en el artculo de anlisis, y aqu nos limitaremos
a resumir aquellos datos. Teniendo en cuenta el rendimiento de ambos chips grficos en
videojuegos los resultados muestran una media del 410% ms de rendimiento a favor
de la NVidia. Con los grficos integrados Intel la experiencia en esos juegos es
pauprrima (en la mayora de los casos por debajo de los 30 fps, el lmite entre buena y
mala experiencia), pero el uso del sistema operativo, navegador y aplicaciones bsicas es
excelente y no difiere en nada de lo que nos encontramos con la grfica NVidia.
La tendencia de las IGP es seguir evolucionando, ofrecer un rendimiento creciente en
cada nueva generacin e incluso robarle algo de protagonismo a los grficos dedicados en
los juegos ms punteros. Las tarjetas grficas dedicadas seguirn existiendo, pero
quedarn cada vez ms relegadas a su uso en videojuegos muy punteros, a aplicaciones
de corte profesional y para los que busquen la mejor experiencia existente.

Estas IGP son muy interesantes para el usuario medio, pero traen consigo ciertas
ventajas y desventajas. A saber:
Ventajas: menor consumo general, menor temperatura de funcionamiento general,
potencia creciente y cada vez ms representativa, menor espacio fsico ocupado.
Desventajas: est limitada fsicamente (en tamao disponible en el SoC, calor
generado en un chip encapsulado donde se encuentran CPU y GPU), imposibilidad
de poder cambiar la IGP (y tener que cambiar el conjunto CPU+GPU al completo).
El futuro de las GPU a nivel domstico pasa por que los grficos integrados gocen
de mayor protagonismo en cada nueva generacin. Sus evoluciones estarn limitadas
por cuestiones fsicas (espacio, calor generado) y es por ello que
El mercado de las GPUdomsticas est en pleno
proceso de cambio. Las grficas dedicadas
seguirn existiendo, pero estarn cada vez ms
limitados al software ms exigente y al GPGPU
cada salto generacional en el tamao del transistor (el proceso de fabricacin, actualmente
liderado por Intel y sus 22 nanmetros que darn el salto a los 14 nanmetros con
Broadwell a lo largo de 2014) ser vital, ya que se trata de meter lo mismo en menos
espacio (o pensando de forma anloga, meter ms en el mismo espacio).
Tambin hay nuevas tecnologas que pretendenrevolucionar el mercado de los grficos
domsticos, como por ejemplo hUMA de AMD prevista tambin para 2014: CPU y
la IGP podrn acceder al mismo espacio de memoria para as mejorar el rendimiento del
conjunto.
En definitiva, el mercado de los grficos domsticos est en pleno proceso de
cambio. LasIGP pueden parecer una vuelta al pasado (cuando tenamos GPU integradas
en el chipset) pero la evolucin de la tecnologa ha hecho que sean una brillante idea
pensada para una gran mayora de usuarios. Los grficos dedicados seguirn
existiendo pero estarn cada vez ms limitados a un uso en videojuegos y aplicaciones
profesionales, con especial importancia en su uso como GPGPUesencial en ciertos
mbitos.

Das könnte Ihnen auch gefallen