I'm thinking about the idea of doing a distributed rendering via internet but i don't know where to start. Is there any sort of open software to provide P2P rendering or something like that?


There are Blender render farm services similar to folding@home: (Anyone can volunteer their computer time; the work is done and sent to a main server for collection by the project submitter.)

The list of blender farms I found these on, that also includes normal payed and free render farm services.

(I did not find any that are strictly P2P though. The ones I found are master-slave, but such a setup can be considered "cloud" too, (meaning computers on the internet are doing work for you) but one of them-- the master/main server is in charge of managing the workers and jobs. A headless P2P distributed farm, like bitcoin or something is likely possible, but is perhaps more complicated than it's worth for now.)

Concerns from ideasman42's answer do apply though, especially privacy.

There are also tools for building your own private distributed render farm: (These can be setup on spare machines, cloud/vps servers...)

  • 2
    $\begingroup$ There is also Brender (brender-farm.org) $\endgroup$ – Gwen Jul 2 '13 at 3:31
  • $\begingroup$ Good point. I focused on huge, free, public renderfarm services. With brender-farm.org you can make your own private render farm, running on your own machines/cloud servers. $\endgroup$ – James Thomas Jul 2 '13 at 16:06
  • 1
    $\begingroup$ BURP itself can also be used to build your private render farm. See development.burp.renderfarming.net/projects/burp/wiki $\endgroup$ – jesterKing Jul 2 '13 at 19:45

In short no, There are lots of small renderfarm projects but as far as I know nothing thats as simple as folding@home - where you can just run an application and immediately join a globally distributed render-farm.

There are a few reasons this is quite involved to setup...

  • Often the kind of projects where you would want a render-farm have 100mb, even many gigabytes of textures and other assets.
  • More complex scenes often have high memory requirements for textures, mesh data, physics cache - while its possible to restrict which computers accept jobs, the requirement for high end systems means there needs to be enough free systems online for such a p2p system to make sense.
  • With a render farm often you want management abilities, job prioritizing, ability to cancel jobs, upload minor changes then re-render, this becomes fairly tricky to manage p2p.
  • With rendering you can't automatically validate that the output is correct (except for basic things such as totally blank frames or corrupt image data). Systems that return bad images need to be identified & blacklisted - the owner probably should be made aware of this... Maybe the disk has a bad sector, or the graphics card has faulty ram, but somehow it has to be managed.
  • Aside from personal projects, anyone doing commercial work over a network would likely not want to send their projects to random people online (which limits who would use the farm).
  • Security issues: if you have Python expressions for drivers its near impossible to restrict malicious code.

While its possible to resolve all the issues I've raised - its a lot of work to get running and well supported.

Some of the issues I raised here don't apply to the cloud - where you have API's to manage systems and better control of what goes on, but in this case using the cloud is really not so different from typical renderfarm setups.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.