martes, 13 de febrero de 2018

Renderizado por GPU en Blender sobre Linux Mint

Tengo una PC nueva en la que instalé LinuxMint 18.3 Cinnamon.


Además de ser un equipo potente, tiene una tarjeta gráfica Nvidia Gforce GTX 1060.
La intención era poder hacer uso del procesamiento por GPU desde Blender, y esa tarjeta gráfica está entre las mejores para esa tarea, según esta lista.

Así que luego de instalar el sistema operativo y de actualizarlo, instalé los controladores propietarios de Nvidia para la tarjeta gráfica (desde el “Administrador de Controladores”):



...y luego procedí a instalar Blender (la versión 2.76b, que es la que está en los repositorios de LM18).

Más rápido que ligero, fui a File / User Preferences... / System, cambié el idioma a español,...


...y, como se ve al pie de la columna de la izquierda, en el apartado “Dispositivo de cálculo” decía Ninguno y la única opción era procesar por CPU.
O sea, no estaba haciendo uso de la tarjeta gráfica.

Así que, búsqueda mediante, di con que no sólo es necesario un dispositivo CUDA (como la tarjeta gráfica en cuestión), sino que, como se consigna en este foro, para Linux Mint, Ubuntu y otras variantes de Debian (y quizás otras distribuciones) es necesario instalar el paquete nvidia-modprobe que detecta el dispositivo Nvidia CUDA y lo deja disponible para Blender.
Además, en esta otra discusión, el usuario Amziraro aclara que para que la trilogía  Blender - Nvidia - CUDA funcione es necesario nvidia-cuda-toolkit, nvidia-modprobe y los controladores propietarios.



Entonces, como los controladores propietarios ya los tenía instalados, desde el Gestor de Software instalé nvidia-cuda-toolkit y nvidia-modprobe y volví a abrir Blender y al ir a Archivo / Preferencias de Usuario... / Sistema


... ahí sí reconoció mi nueva tarjeta gráfica.

Todo parecía listo, así que descargué un archivo de prueba, el BMW Benchmark de Mike Pan. Esa descarga comprimida incluye dos archivos, uno que se llama bmw27_cpu.blend (optimizado para renderizar por CPU) y el otro bmw27_gpu.blend (optimizado para renderizar por GPU).

Abrí y rendericé el primero con los valores predefinidos (demoró 8'15") y este es el resultado:



Pero, cuando lo quise renderizar el segundo dio un error: “CUDA kernel compilation failed”.

Así que fui al sitio oficial de Blender (blender.org) y descargué la versión más nueva del programa (la 2.79) y la descomprimí y ejecuté.
Abrí de nuevo el primero de los archivos y lo rendericé. El resultado fue el mismo, pero en menos tiempo (7'07").
Abrí el segundo archivo, y esta vez sí lo pudo renderizar y en un tiempo de 3'46".

¡Ahora a renderizar que se acaba el mundo!

No hay comentarios:

Publicar un comentario

Lo que escriba a continuación será revisado antes de publicarse.
Gracias por tus comentarios.