Para tu comodidad, tradujimos esta página mediante traducción automática. No podemos garantizar la precisión ni la confiabilidad del contenido traducido. Si tienes alguna duda sobre la precisión del contenido traducido, consulta la versión oficial en inglés de la página web.
¿Qué es una GPU?
Una unidad de procesamiento gráfico (GPU) es un procesador especializado diseñado para realizar muchos cálculos en paralelo, originalmente para renderizar imágenes, video y gráficos 3D. Las GPU ahora también aceleran otras cargas de trabajo altamente paralelas, incluyendo aprendizaje automático, simulación científica y codificación de video.
En un juego o aplicación tiempo real 3D, la GPU procesa los datos de la escena para producir los píxeles que ve un jugador, renderizando la imagen docenas de veces por segundo.
¿Cómo funciona una GPU?
Una GPU obtiene su velocidad del paralelismo. En lugar de depender de un pequeño número de núcleos de CPU potentes para manejar tareas secuencialmente, una GPU divide grandes cargas de trabajo en muchas operaciones más pequeñas que pueden procesarse en paralelo.
La GPU trabaja junto con la CPU, que maneja tareas como la lógica del juego y envía instrucciones a la GPU para gráficos y otras cargas de trabajo paralelas. Para un desglose lado a lado de los dos procesadores, consulte CPU vs. GPU.
Una GPU depende de varios componentes clave y capas de software:
- Cores: Unidades de procesamiento que ejecutan muchas operaciones en paralelo. Su arquitectura y nomenclatura varían según el fabricante de la GPU, como los núcleos CUDA en las GPU de NVIDIA y los procesadores de flujo en las GPU de AMD.
- Memoria de video (VRAM): Memoria de alto ancho de banda dedicada que almacena texturas, mallas, datos de fotogramas y otros recursos cerca de la GPU. Las GPU integradas suelen compartir la memoria del sistema en su lugar.
- Shaders: Programas que se ejecutan en la GPU para realizar tareas como posicionar vértices, calcular colores de píxeles y procesar cargas de trabajo de propósito general, incluidas las manejadas por shaders de cómputo.
- Controladores y APIs gráficas: Capas de software que permiten a las aplicaciones comunicarse con la GPU. Las API como DirectX, Vulkan, Metal y OpenGL proporcionan interfaces para emitir comandos gráficos, mientras que los controladores traducen esos comandos para el hardware específico de la GPU.
¿Qué sucede cuando una GPU renderiza un fotograma?
Renderizar un solo fotograma sigue la tubería gráfica, una secuencia de etapas que transforma los datos de la escena 3D en una imagen 2D:
- Enviar: La CPU envía llamadas de dibujo que especifican qué mallas, materiales y configuraciones de renderizado usar.
- Procesar vértices: Los sombreadores de vértices transforman los vértices de cada malla desde el espacio de escena 3D a las posiciones utilizadas para renderizar la imagen.
- Rasterizar: La GPU convierte los triángulos resultantes en fragmentos que corresponden a posibles píxeles en la pantalla.
- Sombreado de píxeles: Los fragment shaders calculan el color de cada fragmento utilizando información como texturas, iluminación y materiales.
- Salida: La imagen resultante se escribe en un búfer de marco y se presenta en la pantalla.
¿Cuáles son los tipos de GPU?
Las GPU se pueden agrupar en tres tipos comunes según dónde se ubica la GPU, cómo accede a la memoria y cómo se entregan sus recursos de computación:
Las GPU integradas comparten recursos del sistema con la CPU, lo que generalmente las hace más eficientes en el uso de energía y adecuadas para dispositivos con espacio o energía limitados.
Las GPU discretas tienen su propio hardware de procesamiento y memoria dedicada, proporcionando un mayor rendimiento gráfico y de cómputo a costa de un mayor consumo de energía y calor.
Las GPU virtuales proporcionan recursos de computación de GPU de forma remota, permitiendo que las aplicaciones utilicen hardware de GPU alojado en un centro de datos en lugar de en el dispositivo local.
¿Cuál es la diferencia entre una GPU y una tarjeta gráfica?
Los términos GPU y tarjeta gráfica a menudo se usan indistintamente, pero se refieren a cosas diferentes:
Cada tarjeta gráfica contiene una GPU, pero no toda GPU está en una tarjeta gráfica. Las GPU integradas están construidas en el mismo chip o paquete que la CPU y comparten recursos del sistema en lugar de usar una tarjeta gráfica separada.
¿Para qué se utiliza una GPU?
Las GPU se utilizan dondequiera que una carga de trabajo contenga muchos cálculos que se pueden realizar en paralelo:
- Juegos y 3D en tiempo real: Renderizar fotogramas para juegos y experiencias interactivas en teléfonos, PC, consolas y otros dispositivos.
- VR y AR: Renderizar vistas inmersivas y mantener las altas y consistentes tasas de fotogramas necesarias para experiencias cómodas, particularmente en VR.
- IA y aprendizaje automático: Acelere el entrenamiento y la inferencia de modelos de aprendizaje automático, que involucran grandes cantidades de operaciones matemáticas paralelas.
- Creación de video y contenido: Acelere la codificación de video, el renderizado, los efectos visuales y los flujos de trabajo acelerados por GPU en aplicaciones creativas.
- Simulación y Digital Twins: Ejecuta simulaciones computacionales de física, partículas, iluminación y otras para visualización de ingeniería, automotriz e industrial.
- Gráficos web: Utilice APIs como WebGL para permitir que los navegadores rendericen gráficos interactivos 2D y 3D con aceleración por GPU.
GPU y Unity
En Unity, la GPU renderiza fotogramas de acuerdo con la configuración activa de Universal Render Pipeline (URP) o High Definition Render Pipeline (HDRP). El módulo GPU Usage Profiler muestra cuánto tiempo de GPU toman diferentes partes de un fotograma, ayudando a los desarrolladores a identificar cuellos de botella de renderizado. El Drawer Residente en GPU utiliza instanciación de GPU para reducir las llamadas de dibujo y la sobrecarga de la CPU al renderizar grandes cantidades de objetos.
Preguntas frecuentes
¿Qué significa cuando un juego está limitado por la GPU?
Un juego está limitado por la GPU cuando la GPU tarda más en renderizar un fotograma de lo que tarda la CPU en prepararlo. Las demandas de renderizado, como alta resolución, sombreadores complejos y sobreescritura, pueden aumentar el tiempo de fotograma de la GPU y limitar la tasa de fotogramas. Profiling ayuda a identificar si la CPU o la GPU es el cuello de botella, y la guía de Unity para gestionar el uso de la GPU cubre técnicas comunes de optimización.
¿Puede funcionar una computadora sin una GPU?
Una computadora puede funcionar sin una GPU dedicada, pero la mayoría de las computadoras que muestran gráficos utilizan una GPU integrada o discreta. Algunos servidores funcionan sin una GPU porque no necesitan renderizar gráficos, y el renderizado por software puede usar la CPU para generar imágenes en su lugar. Sin embargo, el renderizado basado en CPU es generalmente menos eficiente que la aceleración por GPU para gráficos 3D en tiempo real exigentes.
¿Qué es un benchmark de GPU?
Un benchmark de GPU es una prueba que mide el rendimiento gráfico o de cómputo utilizando métricas como la tasa de fotogramas, el tiempo de fotograma o una puntuación compuesta. Los puntos de referencia sintéticos ejecutan cargas de trabajo estandarizadas para comparar GPU, mientras que los puntos de referencia del mundo real miden el rendimiento en juegos o aplicaciones reales. Los resultados pueden variar dependiendo de la resolución, la configuración gráfica, los controladores y la carga de trabajo específica.