Você está na página 1de 6

TODO SOBRE LA GPU

Este tema presente est dedicado a la Unidad de Procesado de Grficos GPU, el objetivo que se plante al momento de hacer este trabajo fue el de crear un material que sea lo ms entendible posible - Sin perder el aspecto tcnico para personas afines o no al mundo de la computacin. Dicho esto se proseguir a desenvolver el tema presentado.

Qu es la GPU?

GPU es el acrnimo utilizado por sus siglas en ingls para abreviar Graphics Processing Unit, que significa "Unidad de Procesado de Grficos". Una GPU es una CPU que trabaja como coprocesador dedicado exclusivamente al procesamiento de grficos u operaciones de coma flotante, para aligerar la carga de trabajo del procesador central en aplicaciones como los videojuegos. De esta forma, mientras gran parte de lo relacionado con los grficos se procesa en la GPU, la CPU puede dedicarse a otro tipo de clculos (como la inteligencia artificial o los clculos mecnicos en el caso de los videojuegos). Una GPU implementa ciertas operaciones grficas llamadas primitivas optimizadas para el procesamiento grfico. Una de las primitivas ms comunes para el procesamiento grfico en 2D es la operacin BitBLT, que se encuentra en una unidad llamada "blitter", adicionalmente existen primitivas para dibujar rectngulos, tringulos, crculos y arcos. Los GPU modernos tienen muchas ms primitivas que soportan tambin grficos de 3D.

ARQUITECTURA DEL GPU

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. Diferentes GPU tienen diferentes estructuras internas, a continuacin veamos un par de grficos que nos ayudar a entender mejor la arquitectura interna de un GPU.

DETALLES TCNICOS DE LA GPU

VERTEX SHADER: En trminos de programacion es una funcin que recibe como parmetro un

vrtice. Slo trabaja con un vrtice a la vez, y no puede eliminarlo, slo transformarlo. Para ello, modifica propiedades del mismo para que repercutan en la geometra del objeto al que pertenece. Con esto se puede lograr ciertos efectos especficos, como los que tienen que ver con la deformacin en tiempo real de un elemento; por ejemplo, el movimiento de una ola. Donde toma una gran importancia es en el tratamiento de las superficies curvas, y su avance se vio reflejado en los videojuegos ms avanzados de la actualidad. Particularmente, en el diseo de los personajes y sus expresiones corporales.

PIXEL SHADER: Este no interviene en el proceso de la modelacin del esqueleto de la escena, sino que forma parte de la segunda etapa: la rasterizacin. All es donde se aplican las texturas y se tratan los pixeles que forman parte de ella. Bsicamente, un pxel shader especifica el color de un pxel. Este tratamiento individual de los pixeles, permite que se realicen clculos principalmente relacionados con la iluminacin del elemento del cual forman parte de la escena, y en tiempo real. Teniendo la posibilidad de iluminar cada pxel por separado. De esta forma es como se lograron crear los fabulosos efectos que se pueden apreciar en Doom 3, Far Cry y Half Life 2, por mencionar slo los ms conocidos. La particularidad de los pxel shaders es que, a diferencia de los vertex shaders, requieren de un soporte de hardware compatible. En otras palabras, un juego programado para hacer uso de pxel shaders requiere si o si de una tarjeta de video con capacidad para manipularlos. Para poder programar usando comandos de las funciones Pixel Shader y Vertex Shader, se usa el lenguaje HLSL (High Level Shader Languages).

UNIDAD ROP (Raster Operator Unit): Cuando los pixel procesados se almacenan en la memoria de video de la tarjeta, listos para ser resueltos en pixeles presentados en pantalla, esta tarea es manejada por una unidad de la GPU llamada ROP. Un GPU moderna pone un nmero de ROPs en ejecucin, basados en cmo el GPU debe optimizar la salida del pixel sin cuellos de botella, para realizar las tareas finales de la representacin. As como simplemente resuelve y dibuja los pixeles en pantalla, el hardware del ROP tambin realiza un nmero de optimizaciones para ahorrar el ancho de banda de la memoria al leer y escribir los pixeles en un framebuffer, tal como compresin del color (incluso ahorrar 1 byte de datos del color por pixel es un ahorro enorme en trminos de ancho de banda). Las unidades ROP tambin se ocupa de la compresin Z y compara, (para ver cul pixel est encima del otro) siendo lo que ms facilita para clculos de multisample antialiasing. El Multisample antialiasing utiliza la informacin de la profundidad Z para alterar el color de los pixeles, de modo que sea la geometra rasterisada anterior en el proceso de la representacin alisada (antialiased) para que se vea la imagen ms suave. Y para que todos memoricemos fcilmente lo que son las unidades ROPS: -El ROP es el que da a la GPU la capacidad de escribir los pixeles, manejar cualquier antialiasing as como la compresin Z y la compresin de color.

Pipeline TMU (Texture Mapping Unit): Es el motor encargado de procesar las texturas por cada pixel pipeline. Tambin conocidas como Graphical Pipeline, es una pequea etapa de la GPU que realiza las tareas menos pesadas. En concreto esta unidad rota y vuelve a clasificar un bitmap segn su tamao para aplicarlo sobre un plano arbitrario de un objeto 3D dado.

FillRate (Tasa de relleno): La tasa de relleno (FillRate) es el nmero de texel (Pixel + textura asociada) que es capaz de generar el motor grfico en un segundo. Se puede sacar con la frmula: Mhz del ncleo por el nmero de Pixel Pipelines. (FR = Vn * Px). Por ejemplo si una 6600GT tiene 8 pixel pipelines y 500Mhz de velocidad del ncleo, entonces tendra un FillRate terico de : 500*8= 4000Mtexels/s.

Pixel Pipelines: Es donde ocurren las etapas requeridas en transformar una imagen tridimensional hacia una pantalla de dos dimensiones. Las etapas son responsables de procesar la informacin, al principio proporciona propiedades en los puntos de finales (vrtices) o controlar los puntos primitivos geomtrico usados para describir que debe ser renderizado. Los tipos primitivos tpicos en 3D son lneas y tringulos. El tipo de propiedades proporcionadas por vrtice incluye coordenadas de x-y-z, valores RGB, la translucidez, la textura, reflexin y otras caractersticas.

Shaders Unificados: Hasta ahora tanto pixeles como vertex shaders son unidades de proceso separadas (procesadores dedicados). Los pixeles shaders se encargaban del aspecto y color de la textura, mientras que los vertex se encargaban de la alteracin de estas segn su posicin en el mapa 3D (x, y). El problema con ste sistema es que dependiendo de muchas variables, cambia la carga de pixeles o vertex shaders; muchas veces se ocupan mucho ms las unidades de pixeles y otras veces mucho ms las unidades vertex dejando en reposo un buen porcentaje del potencia de clculo. Con los shaders unificados, cada unidad es capaz de procesar tanto pixel como vertex shaders segn sea requerido, de esta manera se podr maximizar la eficiencia en la utilizacin de los recursos de una tarjeta, ya que se podr hacer un balance de carga segn lo requiera la aplicacin, si se necesita mucha potencia en vertex o en pixeles no estarn limitados por las unidades especficas de cada cual, sino que podrn hacer uso de todas las unidades si es necesario. El uso de Shaders unificados en teora mejorar bastante el rendimiento final y las posibilidades de programacin para juegos, reproduccin de video sin tanta penalizacin, efectos en post produccin a tiempo real y un largo etctera.

Motor PolyMorph de Nvidia: Con el motor PolyMorph, las GPU GTX 400/500 implementan el primer canal de geometra escalable con hasta 16 motores de teselacin individuales en una nica GPU. Estos motores ofrecen rendimiento revolucionario en el nuevo y ms importante recurso de grficos de DirectX 11, la teselacin acelerada por la GPU. Al permitir concentrar una geometra ms detallada en una escena, la teselacin les permite a los desarrolladores crear entornos ms complejos con una claridad visual hermosa. Los bordes cuadrados se suavizan, lo que permite renderizar a los personajes del juego con detalles de calidad cinematogrfica. Y ya que la teselacin se aplica apenas a las reas necesarias, no se compromete el rendimiento del juego.

Teselado: Se trata de una tcnica para mejorar visualmente los polgonos, dividindolos en fragmentos ms pequeos aumentando con ello el n de tringulos para conseguir ms realismo a la figura. A su vez junto con la tcnica de desplazamiento de mapeados, podremos crear figuras 3D ms realistas.

TIPOS DE FILTROS GRAFICOS

1. Anti-Aliasing. 2. Filtro Anisotrpico. 3. Supersampling 4. Multisampling. 5. Mip mapping. 6. Filtro bilinear. 7. Filtro trilinear.

MARCAS DE CHIPS GRFICOS

NVIDIA

ATI

S3

3dfx

Matrox

XGI

CONCLUSIONES

La importancia del CPU es muy grande puesto que ayudan a un mejor desempeo del CPU. Son parte de la evolucin de las computadoras. Hay una gran gama de marcas en el mercado pero las Nvidias son una de las mejores. El GPU es un CPU pero con una tarea especfica, procesar graficos.

BIBLIOGRAFA

http://foro.noticias3d.com/vbulletin/showthread.php?t=187792 http://es.wikipedia.org/wiki/Unidad_de_procesamiento_gr%C3%A1fico http://www.taringa.net/posts/info/6075966/Que-es-un-GPU__Unidad-de-ProcesamientoGrafico_.html

Você também pode gostar