I’m struggling to optimize a network solution for rendering animations using Cycles GPU with Blender 2.65, does anyone have any experience with this? I have successfully tested the built in “Network Renderer” capability but with Cycles as the render engine, I see no further options for CPU or GPU. I checked on the slave machine and it’s CPU was hovering around 100% and the renders were trickling in slowly (exactly what I would expect from the CPU).
I’d like to utilize the GPU on each of the slave machines but so far I’m stumped as to how/where that’s setup. Any help is much appreciated. I fear that it may simply not be an option but I could swear I saw the guys over at Project Mango using a network render farm setup - and I have to assume they were rendering with GPU to get the project turned around faster.
In any case, thanks for reading and happy blending!
but I could swear I saw the guys over at Project Mango using a network render farm setup - and I have to assume they were rendering with GPU to get the project turned around faster.
I believe Mango used their render farm for cpu rendering. GPUs have too little memory for all the data in such complex scenes.
Makes sense with such a huge project with complex scenes.
My scenes tend to be less complex, and with 3gb of vram each, the GTX 580’s we run seem to handle them just fine… and so fast! It would be nice if there was a way to use the network render option to take advantage of the GPU’s since the only other option I am aware of is opening the project on each machine and setting each to render different sets of frames for the animation.
Is that pretty much an impossibility at this point? Are there any alternatives?
According to my experience with network rendering, for animations it’s not worth the effort (up to 6 computers, more I can’t say).
It doesn’t scale as you would expect. If you have 2 identical machines, it won’t render 2x faster, but something like 1.5x. This is because animations generally renders each frame faster (lower quality), and in this case the networking limitations pops in. I’m not sure specifically about Cycles, but I think it’s the same thing.
The solution would be to render half of the animation in each computer, or you can render them interspersed, like even frames in one and odd frames in other, this way it would scale pretty much x2.
I don’t know about Cycles settings, but for biased renderers I’ve used, the bigger the bucket, the faster it is, because small buckets uses too much network and networking is dead slow compared to the internal bus of computers. Generally, for quick stills, I even size the buckets so there are only 16 or less. This way it scales almost like multiplying by the processing power.
Also, maybe Cycles minimizes the networking, as It’s unbiased, I think it could render the images separately and then average them somehow.
Probably easier to have the .blend, and the output directory stored on a network location, so you can lanuch blender on each of the PC’s (say 6) and then get each one to render 1/6th of the frames. Probably easier to start them at frames 1-6, and get each PC to render each 6th frame from there.