sábado, 9 de marzo de 2013

Análisis Blender Addon: Network Render #b3d

Esta semana me dedique a probar un interesante addon para Blender, el network render, plasmare algunas experiencias, flujos y benchmarks en la puesta en marcha de esta interesante render farm:

Escenario

Proyecto blender:

resolution
1280x720 at 100%
168 frames
588736 Vertices
Cycles 250 iteraciones

Computadoras

Dual core de 2.0 Mhz, 2G Ram, Linux Mint
Quad core de 2.3 Ghz, 4G Ram, Ubuntu
Mac mini i7 2.3 Ghz, 4G Ram, OSX

Configuración

1.- De manera muy sencilla activamos este addon y seleccionamos el tipo de render.



2.- Creamos un nodo master, este nodo sera el encargado de almacenar los frames, distribuir los proyectos, publicar el servicio en la red, crear la pagina web administrativa y colectar los frames renderizados, en este caso fue levantado en el Linux Ubuntu. su consumo es muy bajo así que perfectamente se puede levantar en un computador mas modesto.


3.- Enganchamos los nodos, en este caso los tres computadores, en el caso del ubuntu se levanta una segunda instancia de blender para usar como Slave. elegimos el tipo de render y seleccionamos la opción Slave, con el boton de reciclaje automaticamente conectamos el nodo master en la red o escribimos su dirección IP.





En este punto la granja esta lista para recibir tareas podemos ver la interface administrativa del master por medio del boton "Open Master Monitor" en cualquier nodo o escribimos http://ipnodomaster:8000 en cualquier navegador, con esta interface podremos ver el progresos de los trabajos, pausarlos o cancelarlos, re-encolar los frames que por alguna caída de nodo no se finalicen re-asignando a otra maquina disponible y ver los datos estadísticos del o los proyectos.


4.- Por ultimo conectamos la estación cliente, abrimos el proyecto a renderizar, activamos el addon y seleccionamos Network render y lo ponemos como modo client, desde este aqui manejamos lo que queremos hacer y enviamos el trabajo al master para que comience el proceso, en este caso se uso animation on network. esta tarea se levanto desde el mac que tambien cumple la función de esclavo.



Horas mas tarde...


Con algunos pequeños percances la tarea se concreto de forma exitosa, el unico percance es que se cayo blender en el mac como unas 4 veces (Linux poderosamente rindió hasta el final :) ), para lo cual se debió re-asignar los frames con error de las caídas a los otros nodos. Aparte de esto el resto fue ver una película y leer un rato.

algunos números

promedio de renderización por frame por maquina


Dual core de 2.0 Mhz, 2G Ram, Linux Mint -> 17 minutos
Quad core de 2.3 Ghz, 4G Ram, Ubuntu -> 3 minutos
Mac mini i7 2.3 Ghz, 4G Ram, OSX -> 1.8 minutos

pronto Contnuara ...