Unidad de procesamiento gráfico para niños
Una unidad de procesamiento gráfico (conocida como GPU por sus siglas en inglés, graphics processing unit) o procesador gráfico es un tipo especial de procesador. Su trabajo principal es manejar todo lo relacionado con los gráficos y las imágenes en una computadora. Esto ayuda a que el procesador principal (la CPU) no se sobrecargue, especialmente cuando juegas videojuegos o usas programas de diseño 3D. Así, la GPU se encarga de los gráficos, y la CPU puede dedicarse a otras tareas importantes, como la inteligencia artificial o los cálculos de movimiento en los juegos.
Las GPU tienen instrucciones especiales, llamadas "primitivas", que están diseñadas para hacer tareas gráficas de forma muy eficiente. Por ejemplo, una de estas primitivas es el antialiasing, que ayuda a que los bordes de las figuras se vean más suaves y realistas. También hay primitivas para dibujar formas básicas como rectángulos, triángulos o círculos. Las GPU modernas tienen muchas de estas instrucciones para crear efectos visuales muy avanzados.
Las GPU suelen encontrarse dentro de las tarjetas gráficas, que son componentes esenciales para ver imágenes en tu pantalla.
Contenido
Historia de las GPU
Las GPU que conocemos hoy tienen sus raíces en los chips gráficos que aparecieron a finales de los años 70 y durante los 80. Estos primeros chips podían manejar algunas tareas gráficas básicas, como los sprites (pequeñas imágenes que se mueven en la pantalla). Algunos de ellos incluso podían trabajar con listas de instrucciones para reducir la carga del procesador principal. Un ejemplo temprano fue el coprocesador ANTIC, que se usaba en computadoras como el Atari 800.
A medida que avanzaba el tiempo, los procesadores se hicieron más rápidos y se empezaron a usar para crear GPU más avanzadas. Muchas tarjetas gráficas de computadoras y estaciones de trabajo de los años 80 y 90 usaban procesadores especiales para dibujar imágenes rápidamente.
¿Qué hace diferente a una GPU de una CPU?
Aunque las GPU son muy potentes, no pueden reemplazar a la CPU en una computadora normal. La principal diferencia es que las GPU están hechas para una tarea muy específica: los gráficos. Esto significa que sus diseñadores pueden optimizar mucho su funcionamiento para esa tarea. Por ejemplo, las GPU son excelentes para hacer cálculos con números decimales, que son muy comunes en los gráficos 3D.
Otra gran diferencia es cómo trabajan. Muchas tareas gráficas, como dibujar los píxeles de una imagen, se pueden dividir en muchísimas tareas pequeñas e independientes. Las GPU están diseñadas para hacer muchas de estas tareas al mismo tiempo, usando una gran cantidad de "mini-procesadores" que trabajan en paralelo. Mientras que una CPU tiene unos pocos procesadores muy potentes para tareas variadas, una GPU tiene cientos de procesadores más pequeños que se especializan en gráficos. Esto hace que, aunque la velocidad de reloj de una GPU pueda parecer menor que la de una CPU, su capacidad para procesar gráficos sea mucho mayor gracias a su diseño en paralelo.
La forma en que están construidas también es diferente. La CPU sigue un modelo de arquitectura que procesa las tareas una por una, aunque muy rápido. La GPU, en cambio, usa un modelo que facilita el procesamiento de muchas cosas a la vez, lo que es perfecto para los gráficos.
Cómo funciona una GPU
Una GPU está dividida en muchas partes que trabajan juntas. Las dos partes principales son las que procesan los vértices (los puntos que forman las figuras 3D) y las que procesan los píxeles (los pequeños puntos de color que forman la imagen final).
Además, la memoria es muy importante. Es una memoria muy rápida que guarda los resultados intermedios de las operaciones y las texturas (las imágenes que dan color y detalle a los objetos 3D).
El proceso general es así:
- Primero, la información de la CPU llega a la GPU en forma de vértices.
- Estos vértices pasan por una etapa llamada vertex shader, donde se les aplican transformaciones como rotar o mover las figuras.
- Luego, se decide qué parte de esas figuras se verá en la pantalla (esto se llama clipping).
- Después, los vértices se convierten en píxeles en un proceso llamado rasterización.
- La parte más intensa del trabajo ocurre en el pixel shader. Aquí se aplican las texturas y otros detalles a cada píxel.
- Antes de que los píxeles se guarden, se aplican efectos como el antialiasing (para suavizar bordes) o el efecto niebla.
- Finalmente, unas unidades especiales llamadas ROP (unidades de salida de renderizado) toman la información y preparan los píxeles para que se muestren en tu monitor. Si es un monitor antiguo, los píxeles pasan por un conversor digital-analógico (DAC) para transformarse en una señal analógica.
Programación de las GPU
Al principio, programar una GPU era complicado y requería usar lenguajes muy específicos para cada modelo. Con el tiempo, se crearon las interfaces de programación de aplicaciones (API), que son como "traductores" que permiten a los programadores usar un lenguaje más estándar para diferentes modelos de GPU.
Dos de las API más conocidas son OpenGL (un estándar abierto) y DirectX (desarrollado por Microsoft). Gracias a estas API, los programadores pueden crear juegos y aplicaciones gráficas sin tener que preocuparse por los detalles internos de cada GPU. Más tarde, se desarrollaron lenguajes de programación aún más sencillos para trabajar con estas API.
Uso de las GPU para cálculos generales
Debido a la gran capacidad de cálculo de las GPU, los científicos e ingenieros han encontrado formas de usarlas para tareas que no son solo gráficos. A esto se le llama GPGPU (GPU de propósito general). Esto significa que la GPU puede ayudar a la CPU en cálculos complejos de muchas áreas diferentes, no solo en videojuegos.
Las GPU y la ciencia
La química cuántica es un campo de la ciencia que necesita muchísima capacidad de cálculo para entender cómo se comportan los átomos y las moléculas. Las GPU han demostrado ser muy útiles en esta área. Se han usado para resolver ecuaciones complejas que describen el comportamiento de los electrones en los átomos, o para calcular la energía necesaria para quitar un electrón de un átomo. La potencia de las GPU ha ayudado a los científicos a simular y entender mejor el mundo a nivel molecular.
Véase también
En inglés: Graphics processing unit Facts for Kids