Es el renderizado por software mejor que el renderizado por GPU?

Tu pregunta estaría mejor redactada como: "¿Es mejor el renderizado de la CPU que el de la GPU?". En última instancia, todas las imágenes se renderizan por software. En una GPU algunos de los procesos básicos se realizan por hardware, y los motores de renderizado de la GPU lo aprovechan.

Cuando se renderiza una escena, hay muchos pases de canales simultáneos que se calculan para el material de la superficie de cualquier objeto. Hay un pase para la difusión, la refección, el bump y el desplazamiento, la oclusión ambiental, la iluminación global, la transmisión, la transparencia, la especulación y la refracción, la luminosidad, la dispersión de la subsuperficie, y más, dependiendo de lo sofisticado que sea tu motor de renderizado.

En una CPU, el renderizado depende al 100% del software y es procesado por el procesador central, que puede tener un solo núcleo o tantos como te puedas permitir. Algunos de los chips actuales tienen hasta 64 núcleos. Para el renderizado de la CPU puedes ejecutar cualquier software que quieras siempre que sea compatible con tu sistema operativo, pero a menos que construyas una granja de renderizado, tu CPU puede ser un cuello de botella porque todo el renderizado tiene que ser realizado por los núcleos de tu CPU, que también está ejecutando el sistema operativo y todos los demás procesos en segundo plano.

En una GPU, los núcleos no son ni de lejos tan potentes o incluso compatibles con los procesos como los de una CPU, pero están especializados en el procesamiento de gráficos lo que los hace extremadamente eficientes para el renderizado de imágenes. Además, en una GPU suele haber muchísimos más núcleos de procesamiento. Una CPU potente típica tiene entre 6 y 8 núcleos. Una GPU potente típica, como la Nvidia GTX 1080ti, tiene 38.000 núcleos.

El problema con la mayoría de los programas de GPU es que puedes obtener tiempos de renderizado muy diferentes con distintos programas de renderizado. Yo uso Cinema 4D, que viene con un motor de renderizado para GPU llamado Pro Render. Cuando salió al mercado, renderizaba la misma escena tanto en Pro Render como en Physical Render, el renderizador por software de C4D, y los tiempos de renderizado eran muy similares, o incluso más lentos. Pero luego compré Redshift en cuanto estuvo disponible y la misma escena se renderizaba unas veinte veces más rápido. Pero para poder usar Redshift, tenía que utilizar una GPU fabricada por Nvidia. Ninguna otra GPU es compatible con él (todavía). Si tienes un Macintosh, esto es un verdadero problema ya que sólo vienen con GPUs de AMD.