Tutoriales

Procesador gráfico que es y para qué sirve

En la actualidad el manejo de ordenadores y sistemas informáticos no se podría concebir sin la presencia de un procesador gráfico. Su existencia es tan importante como la que tiene la CPU, ya que gracias a ellos es posible ver imágenes a través de un monitor.

Si aún no sabes acerca de su importancia real y de cómo es más o menos su funcionamiento, en este post te lo explicamos todo. Además, veremos los términos relacionados con el tema de gráficos y juegos. Este mundo es sumamente amplio y complejo así que entraremos en aspectos más generales.

Qué es un procesador gráfico

El procesador gráfico es un componente que necesariamente se encuentra instalado en nuestro ordenador, el cual se dedica al procesar de todo lo que tiene que ver con la salida de vídeo a nuestro monitor.

No existirían monitores si tampoco existieran procesadores gráficos, y ni mucho menos juegos en 3D, ya que su existencia es indispensable para crear, procesar, renderizar y dar efectos a las texturas digitales. Estos procesadores se pueden encontrar instalados en la propia CPU, a lo cual llamaríamos gráficos integrados, o en una tarjeta de expansión, la cual se llamaría tarjeta gráfica o gráficos dedicados.

Todo en un ordenador y equipo electrónico se reduce a datos, tareas y procesos, que a su vez serán cadenas de ceros y unos, electricidad y no electricidad. En nuestro equipo existen muchos tipos de instrucciones y unas de ellas corresponden a los gráficos, que además son mucho más complejas que por ejemplo las que forman los programas en lo que a volumen se refiere. Por ejemplo: si al pulsar un botón hacemos hacer una suma de dos números o una condición lógica que se ejecuta en la CPU, al pulsar una tecla una GPU debe posicionar un objeto 3D sobre el espacio y renderizar una textura. Desde luego es una operación mucho más complicada.

Diferencias con una CPU

La diferencia básica entre una CPU y una GPU por tanto radica en el tipo de operaciones que debe realizar. Una CPU cuenta con un determinado número de núcleos, por ejemplo 8 o 16, siendo estos de gran tamaño y con muchos elementos electrónicos para ser capaces de realizar una gran variedad de operaciones y a una velocidad muy alta. Tengamos en cuenta que existen muchos tipos de programas y, por tanto, muchos tipos de tareas. Además, es la unidad central de procesamiento, así que también debe encargarse del funcionamiento y comunicación entre todos los componentes.

Por el otro lado, la GPU o Graphics Processor Unit es otro procesador, pero con muchos más núcleos, de hecho, tienen miles de ellos que normalmente llamados stream processors. Estos núcleos son mucho más pequeños y más simples y su cometido es el de realizar operaciones de coma flotante midiéndose en FLOPS (floating point operations per second) compuestas por matrices. Estas operaciones son muchos más largas, por no decir que deben realizarse muchas más a la vez, así que importa bastante más la capacidad de procesamiento en paralelo que la velocidad.

Este es uno de los motivos por los cuales los procesadores pueden llegar a los 4 o 5 GHz o más, y las GPU solamente alcanzan los 2 GHz a lo sumo. De igual forma, elevar a mayor velocidad tal cantidad de núcleos generaría mucho calor y mucho más consumo.

Tarjeta gráfica vs gráficos integrados

Será fundamental para nosotros entender bien dónde está instalado en procesador gráfico de un ordenador, ya que de esto dependerá mucho las posibilidades de uso.

En primer lugar, vamos a hablar de los gráficos Integrados, también IGP en Intel o APU en AMD. Se trata de tener el procesador gráfico instalado directamente en la CPU, dentro del mismo chip aunque por supuesto en núcleos o silicios separados. Esto a priori parece una gran ventaja, y ciertamente lo es si no deseamos jugar, ya que tenemos dos chips en uno.

Con estos IGP actualmente podremos incluso reproducir vídeos y contenido en resolución 4K a 60 Hz o incluso más. El precio del procesador tampoco sube demasiado, de hecho, la mayoría de procesadores actuales cuentan con gráficos integrados excepto los orientados a gaming. ¿La razón? La de su principal desventaja, que su potencia no es comparable a una tarjeta gráfica al tener muchos menos núcleos y potencia. Estos también necesitan compartir memoria RAM al no disponer de memoria propia.

Por otro lado, tenemos las tarjetas gráficas, que como su propio nombre indica, son procesadores gráficos instalados sobre una tarjeta de expansión para ordenador que se conectar a una ranura PCIe. Esto implica tener un dispositivo especialmente construido para procesar gráficos 3D, con su propia memoria RAM, alimentación independiente, conexiones de vídeo y disipador de gran tamaño para su refrigeración.

Por poneros un dato numérico, la potencia de computo de una RTX 2080 Ti de Nvidia puede llegar a los 13,45 TERAFLOPS y una tasa de pixeles de 135,9 GPixel/s, mientras que unos gráficos integrados UHD Graphics 630 de Intel llegarán a los 0,44 TFLOPS y 9,2 GPixel/s. La diferencia es completamente abismal. Por ello si queremos usar nuestro ordenador para jugar, necesitamos una tarjeta gráfica dedicada.

Arquitectura de una GPU, shaders, ROPs y TMUs,

Al igual que ocurre en las CPU, el procesador gráfico también cuenta con su propia arquitectura, en definitiva, la forma en la que interactúan sus componentes internos. Nuestro objetivo no es ni mucho menos explicar cómo son las GPU a nivel de núcleo, ya que esto solamente lo saben sus diseñadores. Y como en los procesadores, cada año o cada dos años se va renovando y cambiando.

Comparativa RDNA vs GCN

Pero sí que es interesante saber cómo se crean y mueven las texturas que nosotros vemos en la pantalla. Entendemos ya que un procesador gráfico cuenta con una gran cantidad de unidades funcionales o núcleos, que son capaces de generar aceleración 3D. Esta aceleración consiste en principio en el mapeo de texturas y en la representación de polígonos, añadiéndose en los modelos actuales cálculos geométricos como la rotación y el posicionamiento de vértices. Así que las operaciones realizadas son fundamentalmente matrices y vectores, traducido a las matemáticas, un vector posiciona un punto en el espacio, mientras que una matriz representa un plano en el espacio.

Podemos dividir las funciones en dos tipos, la de procesado de píxeles y la de vértices. Precisamente la información que le llega a la GPU está en forma de vértices, los cuales han sido enviados por la CPU. Debemos saber que el procesador también tiene una función importante en el manejo de gráficos. Los vértices llegan al “vertex shader” en donde se realizan transformaciones a la figura, dándole movimiento y rotación.

En este punto podemos entender que en una figura 3D, habrá regiones visibles y no visibles, y de esto se encarga el proceso de “rasterizado o renderizado” para poder transformar estos vértices en píxeles que se muestren por pantalla. Hasta aquí llegaría el procesado de físicas y movimiento, el cual no es complicado para una GPU, pero sí el siguiente. Tras esto, se preparan los píxeles para su visualización en pantalla, con las llamadas Raster Operations Pipeline, Unidades de Rasterizado o ROPs.

El procesado continúa con el píxel shader una medida muy conocida para medir la potencia de las tarjetas con sus shader unit o unidades de sombreado. En este proceso principalmente se realiza el texturizado de los píxeles del objeto, se aplica el aspecto visual con antialiasing o DLSS, reflexión de luz, sombreado y otros efectos que simulan un objeto real. A estas “Texture Mapping Units” o Unidades de Mapeo de Texturas se le llaman TMU, y reflejan la capacidad de una GPU para aplicar texturas a un objeto 3D.

En todo este proceso ocurre igual que en una CPU, las instrucciones y resultados se van almacenando en la memoria RAM gráfica o VRAM, que en las GPU actuales es una memoria de tipo DDR, pero mucho más rápida que la normal, concretamente una DDR6 llegando hasta los 14.000 MHz efectivos.

A continuación, los resultados se almacenan en el bufer de fotogramas de salida para que finalmente se efectúe la representación en pantalla. Este proceso deberá generar una imagen digital para los monitores actuales, o una señal analógica para los antiguos CRT, necesitando pasar en este caso por un Conversor Digital-Analógico o DAC.

Arquitecturas actuales de las GPU Ray Tracing y DLSS

Además de los ROPs, TMUs y Shaders las arquitecturas gráficas actuales presentan una mayor cantidad de elementos y funciones que tienen sus propios nombres y que serán la actualidad y futuro para los usuarios.

Si nos centramos en las tarjetas gráficas dedicadas, dos son los principales fabricantes que ocupan el mercado, AMD con sus Radeon y Nvidia con sus GeForce. Cabe recordar que AMD compró a ATI, por lo que también se dedica actualmente a la fabricación de tarjetas. Por otro lado, tenemos a Intel con sus GPU integradas en procesadores y alguna que otra GPU dedicada aún no comercializada, y Huawei, que parece comenzar ahora la andadura en servidores y si todo va bien, en equipos de consumo general. Existen otras marcas como Qualcomm con sus GPU Adreno o Mali de ARM Holding que se dedican al mercado de teléfonos inteligentes.

Microarquitectura Nvidia:

Arquitectura Turing

Nvidia por su parte trabaja actualmente con la arquitectura Turing, la cual lleva un proceso de fabricación con transistores a 12 nm y la división de los núcleos de procesamiento interno en tres tipos:

  • CUDA Cores: son los núcleos que se dedican a la rasterización de gráficos y operaciones de movimiento y coma flotante.
  • Ray Tracing Cores: estos núcleos están especialmente dedicados al procesado de los rayos de luz sobre los objetos rasterizados con los núcleos anteriores. Se encargan de crear sombras, oclusión ambiental, iluminación y reflejos. A esto le llamamos trazado de rayos o ray tracing.
  • Tensor Cores: los últimos núcleos disponibles son los de inteligencia artificial que en Nvidia se denomina DLSS o Deep Learning Super Sampling o Supermuestreo de aprendizaje profundo. Este método sustituye al antialiasing tradicional, para generar una imagen lo más parecida posible a la imagen en resolución real. Esto se hace procesando una menor cantidad de píxeles y generando aquellos faltantes mediante un modelo matemático previamente aprendido. De esta forma se pretende aligerar el volumen de procesamiento sin bajar la calidad de la imagen. Actualmente estamos en la versión DLSS 2.0.
Minecraft RTX

Este mismo año, o principios de 2021 aparecerá la arquitectura Ampere que baja a 7 nm el proceso de fabricación.

Microarquitectura AMD:

Arquitectura RDNA

La arquitectura que maneja AMD actualmente se denomina RDNA siendo la sucesora de la GCN aunque esta no cuenta con DLSS ni tampoco Ray Tracing. La evolución de esta arquitectura radica en el considerable aumento de IPC de su procesador gráfico al contar con proceso de fabricación en 7 nm al igual que sus AMD Ryzen.

No cuenta con Ray Tracing ni tampoco DLSS, aunque la primera de ellas aparecerá en la consola de nueva generación Play Station 5 con su nueva GPU RDNA 2. En ella aparecerán otros conceptos como el sombreado a velocidad variable, aunque aún queda bastante por ver acerca de ella.

Qué es una API gráfica y un motor gráfico

Estos son otros dos términos muy relacionados con el procesador gráfico, aunque esta vez nos situamos en una capa superior, la de software.

Blender

Una API Gráfica, o Interfaz de Programación de Aplicaciones Gráfica consiste en un conjunto de bibliotecas y subrutinas que pueden ser utilizadas por otros programas. Estas cuentan con la capacidad de comunicar los programas y aplicaciones con elementos de más bajo o alto nivel. Un ejemplo de esto puede ser la comunicación entre un juego con el sistema operativo, o a su vez el sistema y su entorno de ventanas con la tarjeta gráfica a través de los drivers.

Por su parte los drivers son los controladores que se utilizan para comunicar los componentes físicos con el software de un ordenador. Así que continúan siendo otro conjunto de funciones, procesos y librerías. Un driver da las instrucciones al sistema operativo y a la API de cómo debe funcionar un determinado hardware. Estas son las API más famosas del momento y sobre las que se programan los juegos:

  • DirectX: se incluye por defecto en Windows, estando actualmente en su 12ª versión. Se dedica a todas las tareas relacionadas con el contenido multimedia del sistema y las aplicaciones que funcionan en él. Pero no solamente trabaja con gráficos, DirectX también procesa datos sobre periféricos como teclado, ratón y otros periféricos de juegos, comunicaciones de red o reproducción de sonido. Las últimas versiones ya están preparadas para procesadores multi núcleo, trazado de rayos y otras funciones para desarrolladores.

  • OpenGL: la siguiente API está destinada a aplicaciones que trabajen con gráficos 2D y 3D, habiendo sido desarrollada por Silicon Graphics. La peculiaridad de este es que a partir de ellas los fabricantes crean las librerías que se utilizarán para las aplicaciones, considerándose por tanto una especificación. En la actualidad se puede decir que su sustituto será Vulkan.
  • Vulkan: La tercera API más famosa es la de Vulkan, la cual está desarrollada por Khronos Group y pertenece a AMD, siendo la predecesora de OpenGL en muchos sentidos. La peculiaridad de esta API es que es está basada en código abierto, y es capaz de aprovechar la cantidad de núcleos disponible en los procesadores para incrementar el rendimiento gráfico, mientras que OpenGL y DirectX en un principio se diseñaron solo para procesadores mono núcleo. A diferencia de DirectX que solo funciona en Windows, Vulkan es compatible con versiones anteriores hasta Windows 7, Android y Linux, habiendo una versión no oficial para MacOS y IOS. Juegos como Doom Eternal, Red Dead Redemption 2 o Wolfenstein utilizan esta API.

Finalmente, un motor gráfico es un conjunto de rutinas de programación que permiten el funcionamiento de un videojuego 2D o 3D y la renderización de sus gráficos. Se trata por tanto del entorno de programación para un videojuego, el cual se encargará de simular las leyes de la física como el movimiento o las colisiones, inteligencia artificial, sombras, rayos de luz o sonido.

Para entenderlo mejor, el motor gráfico no es el propio juego, sino una plataforma en donde los programadores construyen el mundo 3D artificial, personajes, animaciones y mecánicas de juego que serán dirigidas por el propio motor gráfico. De hecho algunos de estos motores incluyen una API para construir este mundo virtual y herramientas gráficas que facilitan la creación de contenido. Un ejemplo muy claro de esto es Blender o Unreal Engine. Otros motores gráficos muy conocidos son Unity utilizado por Gears of War, CryEngine usado por los Crysis, o Frostbyte usado por Need For Speed o Battlefield.

Por qué son tan importante los FPS en los juegos

Queremos finalizar con una medida tan importante en procesadores gráficos como son los frames por segundo o FPS. Mucho más importantes para el jugador que los MHz, los GB o los TFLOPS.

Los FPS o framerate marcan la velocidad a la que el monitor, móvil, cámara o cualquier otro equipo de captura de movimiento muestra las imágenes. Si nosotros vemos una imagen distinta cada segundo, estaremos viendo un fotograma por unidad de tiempo. A partir de los 12 FPS nuestra vista percibe la imagen como un movimiento, y mientras más fotogramas pasen en un segundo, más se incrementará la sensación de movimiento.

Si nos centramos en los juegos y en la reproducción de contenido, serán alrededor de 60 FPS los que hagan notar al usuario una sensación de movimiento totalmente fluida y natural. Aunque somos capaces de apreciar fluidez por encima de estas medidas hasta llegar a unos 120 o 144 Hz, por encima de ahí la apreciación dependerá de cada individuo. En la actualidad existen monitores preparados para representar hasta 360 FPS, lo que sería una tasas de refresco de 360 Hz.

La potencia de un procesador gráfico es fundamental de cara a los FPS, ya que mientras más veloz sea su capacidad de renderizado, más FPS será capaz de entregar. La calidad gráfica y la resolución de un juego influyen drásticamente en los FPS, debiendo adaptarse para conseguir un equilibrio entre ellos. Si un monitor solo tiene 60 Hz de refresco, da igual que la GPU alcance los 100 FPS, solo percibiremos esos 60 FPS de capacidad máxima.

De la calidad de nuestro procesador gráfico va a depender nuestra experiencia multimedia y de juegos.

Conclusiones sobre el procesador gráfico

El tema de procesador gráfico es sumamente extenso y lógicamente no podemos tratarlo todo aquí, pero esperamos haber proporcionado la idea general para que un usuario que no sabía nada, ahora pueda ver modelos de GPU con juicio y capacidad de diferenciación.

Te dejamos algunos tutoriales extras para ampliar conocimiento los procesadores gráficos, así como las tarjetas gráficas que se comercializan actualmente.

Recent Posts

  • Cajas

CHIEFTEC Visio y Visio Air, nueva caja para PC de doble cámara ATX

CHIEFTEC acaba de presentar dos nuevas cajas para PC, Visio y Visio Air con un…

2 horas atrás
  • Reviews

Asus ZenWiFi BT8 Review en Español (Análisis completo)

Asus ZenWiFi BT8 es un sistema Mesh Wi-Fi 7 el cual se sitúa por debajo…

3 horas atrás
  • Portátiles y ordenadores

Snapdragon X: Qualcomm anuncia nuevos modelos de gama baja, apuntan a portátiles de 600 dolares

Qualcomm anuncia nuevos SoC Snapdragon X, pero no se trata de una nueva generación, sino…

3 horas atrás