Mudanças entre as edições de "Blender Farm"

De Pontão Nós Digitais
(https://github.com/rfabbri/bfarmx/commit/a873b2ede533484792d9a33380e28aab7d580c52)
 
(acbe7ab)
Linha 8: Linha 8:
 
from a fairly complex scene using the Cycles engine.
 
from a fairly complex scene using the Cycles engine.
  
=== Test Data / Sample Applications ===
+
=== Test Data / Applications ===
 
To feel the need for high-performance numeric crunching, download the a demo
 
To feel the need for high-performance numeric crunching, download the a demo
 
file from
 
file from
Linha 24: Linha 24:
 
In practice, we'd like to setup a workflow where we render a scene under multiple conditions and parameters, eg to generate ground-truth for big-data apps such as machine learning and computer vision as in 3D reconstrution and Video Understanding.
 
In practice, we'd like to setup a workflow where we render a scene under multiple conditions and parameters, eg to generate ground-truth for big-data apps such as machine learning and computer vision as in 3D reconstrution and Video Understanding.
  
Another applicatio would be to devise real-time computer vision systems to process the videos, which is effectively inverse computer graphics.
+
Another application would be to devise real-time computer vision systems to process the videos, which is effectively inverse computer graphics.
 +
 
 +
== Single node CPU parallel rendering ==
 +
 
 +
# Select the cycles engine
 +
# On the performance panel of render context, set the number of threads.
 +
 
 +
=== Optimizing parameters ===
 +
==== Choosing the block size ====
 +
 
 +
== Single node GPU parallel rendering ==
 +
 
 +
# Install NVidia CUDA on a linux or [[Mac]] OSX node (follow a post on stackoverflow by Gandalf)
 +
# If you succeeded, then GPU will showup in preferences:
 +
# Go to Preferences - System. Compute device must show CUDA (likely OpenCL too). Select that.
 +
# On the render context, set Compute Device to GPU.
 +
 
 +
=== Optimizing parameters ===
 +
==== Choosing the block size ====
 +
 
 +
== Multiple node ==
 +
We wrote scripts on a software package called '''bfarmx''' to control blender
 +
using Netrender to distribute frames. These are still in a very early experimental phase.
 +
Dowload them at:
 +
http://github.com/rfabbri/bfarmx
  
 
== See Also ==
 
== See Also ==
Linha 32: Linha 56:
  
 
Douglas Pio, Hilton Guaraldi and Ricardo Fabbri
 
Douglas Pio, Hilton Guaraldi and Ricardo Fabbri
Polytechnic Institute at UERJ - Rio de Janeiro State University
+
* [[IPRJ|Polytechnic Institute at UERJ - Rio de Janeiro State University]]
http://pt.wikipedia.org/wiki/IPRJ
+
* [[Lab Macambira]]
www.iprj.uerj.br
+
labMacambira.sf.net
+
  
  

Edição das 17h15min de 2 de outubro de 2015

We describe some basic experiments on running Blender on a hybrid compute cluster.

Goal

One main goal is to speed up rendering. Full HD Videos can take weeks to render from a fairly complex scene using the Cycles engine.

Test Data / Applications

To feel the need for high-performance numeric crunching, download the a demo file from

https://www.blender.org/download/demo-files

The barcelona pavilion scene won't even load on a 1GB NVidia GPU (it says: out of memory)! An SD video with 100 frames takes over 3 days on a top-of-the-line Core i7 (as of 2015).

On our compute cluster with Tesla GPUs, each having 4GB RAM, Blender is able to render such videos, but is still not fast enough to render the entire video in reasonable time. Therefore, we'd like to use both CPU and GPU, and distribute frames to be rendered across nodes.

We have Xeon Phi's as well, which we'd like to use as CPU-rendering within blender, but with a high number of threads (over 100).

In practice, we'd like to setup a workflow where we render a scene under multiple conditions and parameters, eg to generate ground-truth for big-data apps such as machine learning and computer vision as in 3D reconstrution and Video Understanding.

Another application would be to devise real-time computer vision systems to process the videos, which is effectively inverse computer graphics.

Single node CPU parallel rendering

  1. Select the cycles engine
  2. On the performance panel of render context, set the number of threads.

Optimizing parameters

Choosing the block size

Single node GPU parallel rendering

  1. Install NVidia CUDA on a linux or Mac OSX node (follow a post on stackoverflow by Gandalf)
  2. If you succeeded, then GPU will showup in preferences:
  3. Go to Preferences - System. Compute device must show CUDA (likely OpenCL too). Select that.
  4. On the render context, set Compute Device to GPU.

Optimizing parameters

Choosing the block size

Multiple node

We wrote scripts on a software package called bfarmx to control blender using Netrender to distribute frames. These are still in a very early experimental phase. Dowload them at:

http://github.com/rfabbri/bfarmx

See Also

Contact

Douglas Pio, Hilton Guaraldi and Ricardo Fabbri