Esta es una respuesta muy “depende”, pero:
Resulta que muchas GPU, especialmente en los primeros días, diseñadas para renderizar para juegos, en realidad pueden tomar atajos al renderizar gráficos basados en DirectX o OpenGL. Hubo sitios web que solían comparar capturas de pantalla de diferentes GPU (o controladores, que también hacen una gran diferencia) con diferentes configuraciones de calidad y controladores, en comparación con el procesador de referencia “DirectX” o OpenGL, que está basado en la CPU (por lo que se ejecuta en una plataforma común independiente de las GPU). Estos atajos conducen a mayores velocidades de cuadros, a expensas de la calidad de la imagen, es decir, los artefactos de visualización. Sin embargo, para fines de juego, dado que FPS es clave, un jugador no notará un poco menos de calidad de imagen o un artefacto que solo puede aparecer de manera más obvia por unos pocos cuadros, de 60 FPS.
Sin embargo, esto sin duda se notará para otros fines de animación en 3D, como si esos cuadros van a ser “pausados” y estudiados o simplemente necesitan verse prístinos.
- ¿Cuáles son las posibilidades de que la ingeniería de software quede obsoleta por la automatización?
- ¿La ingeniería informática es débil en comparación con las telecomunicaciones?
- Como estudiante de ingeniería informática, ¿qué debo aprender para desarrollar mis habilidades?
- ¿Tener calificaciones de Network + y Security + ayuda a obtener un trabajo de nivel de entrada en seguridad de TI?
- ¿Cuáles son las razones por las que los fabricantes de hardware construyen sus propios sistemas operativos?
Otra cosa es la precisión. Incluso si la GPU se usa para ejecutar un sombreador de píxeles para renderizar, para hacer varios efectos más allá de las capacidades expuestas en DirectX / OpenGL, resulta que la GPU solo puede ser más rápida o capaz de matemática de punto flotante de precisión de 16 bits o 32 bits (FP16 / FP32). En particular, la GPU puede no ser, o es mucho más lenta, en matemática de precisión de 64 bits (FP64) que en FP32. Por ejemplo;
Explicar el rendimiento de FP64 en GPU
Dice que el FP64 es 1/24 del rendimiento de FP32. Está ahí, pero nadie usará FP64 para jugar. Solo FP32. Ahora para los juegos, cambiar la velocidad por la calidad está bien. Pero no para renderizar.
También resultó que las GPU anteriores ni siquiera implementaban el llamado punto flotante compatible con IEEE 754, o no eran tan confiables en sus cálculos de punto flotante. Este tipo de medios podría haber en algunos casos, más error en el cálculo de las matemáticas de coma flotante que lo permitido por esa especificación. Estos errores sutiles pueden conducir a pequeños artefactos en los renders. Lo hicieron para ser rápidos y nuevamente no fue súper crítico para los juegos. Ahora, como las GPU también se usan para el cálculo, es importante mantener cierta precisión en el cálculo, por lo que las GPU modernas son mucho mejores en este sentido.
Y también hay un problema de memoria. Las GPU solo se procesan rápidamente si todo encaja en su RAM de video (VRAM), que está directamente conectada a la GPU. Los chips VRAM y la interfaz están diseñados para una velocidad superior a la capacidad, por lo que, si bien normalmente se ven entre 16 y 64 GB de DRAM en una CPU, las GPU tienen más de 2 a 8 GB de VRAM (y esto casi siempre no es usuario) expandible). Una vez que esta VRAM se agota, el controlador de la GPU debe cambiar a la DRAM (de la CPU), en ese caso ahora el límite es la interfaz PCIe a la GPU, que es mucho más lenta que la interfaz de la CPU a su propia DRAM.
Para los renderizados intermedios, la velocidad es importante, por lo que es más probable que el renderizador use el controlador de la GPU para renderizar, por lo que puede haber artefactos sutiles o una precisión menor para las matemáticas, y también las texturas y tales tienen que encajar en la VRAM disponible.
Para los renders finales, la calidad es importante. Si el problema de capacidad VRAM domina, o si se necesita FP64, puede resultar para todo el hardware muy capaz en la GPU, la CPU puede tener un FP64 más rápido (o es el único dispositivo capaz), y tiene mucho más DRAM en su eliminación, además, tiene un ancho de banda más directo para manejar el tamaño de la imagen renderizada final y la calidad requerida.