PDA

View Full Version : What is increase in speed with distributed rendering?



bgolden
06-22-2007, 12:16 PM
I'm sure this is probably difficult to answer with so many variables with processing speed, network speed, etc., but is there a basic equation such as '4 additional nodes will render an animation in 1/4 of the time?'

We're setting up a render farm and inquiring minds want to know. Any help would be greatly appreciated. Thanks in advance for any responses . . .

Lightwolf
06-22-2007, 12:34 PM
Basically, yes. As long as you distribute a frame sequence, you will get a fairly linear speed increase.
However, depending on your set-up, never faster than the time it takes for your slowest machine to render a single frame.

Cheers,
Mike

bgolden
06-22-2007, 01:44 PM
Thanks Mike. When you say, 'depending on your set-up', is there one configuration that is more optimal than another? Do you mean, regardless of your set-up, the overall render farm will not render any faster than the slowest machine?

Lightwolf
06-22-2007, 01:55 PM
Thanks Mike. When you say, 'depending on your set-up', is there one configuration that is more optimal than another? Do you mean, regardless of your set-up, the overall render farm will not render any faster than the slowest machine?
No, my point was:
You have ten machines, 9 of them render a frame in 10 seconds, 1 renders them in 10 minutes.
The scene gets distributed, one frame per machine. they all start to render.
9 frames will be finished after 10 seconds, the 10th frame however you need to wait 10 minutes for.
Try to keep the machine power fairly balanced in the render farm. But basically: Get fast CPUs (look for a decent price/performance, looking at the whole system), then get as much RAM as you need (or can afford) , next a small HD for the OS.
Networking is not _that_ critical, since most of the time will be spent crunching on the CPU, not loading or saving objects/images. A decent GBit network and a central server (with at leat the option to get a Raid-5 for the drives) will server you well at up to 100 CPUs or so... depending on the scenes you render (the faster they render, the more frames will be written back to the server).

(We're using 10 CPUs on a 100MBit network, and the network has _never_ been the bottleneck).

Cheers,
Mike

bgolden
06-22-2007, 02:01 PM
Excellent feedback. Thanks SO much for your time and expertise Mike.

My Best,
- Brad

Lightwolf
06-22-2007, 02:09 PM
Excellent feedback. Thanks SO much for your time and expertise Mike.

...only if you excuse my spelling mistakes.... gawd, I hate this 5 minute editing limit ;)

You're very welcome :D

Cheers,
Mike

Tom Wood
06-22-2007, 03:45 PM
Maybe with one caveat....

My scenes/objects are relatively small so they render fast. Almost as fast as it takes Screamernet to load each frame into a CPU. So there's lots of 'overhead' for me which makes it less efficient in terms of overall speed. But still well worth it since I render lots of small scenes and can load them all at once and render while I sleep, as opposed to having to sit there and load each one at a time.

Lightwolf
06-22-2007, 04:35 PM
My scenes/objects are relatively small so they render fast.
Yup, that is one situation where you need a fast network. Our scenes tend to be in the 5-10 minute range per frame (PAL video, if not we try to squeeze them into that range) so we don't really have that kind of problem.

Also, depending on the render controller, if you have fast scenes it can pay off to have each node render a batch of consecutive frames - just to lower the time spent loading the scene (unless the render controller uses mode -2, like the Layout internal controller does).

Cheers,
Mike