Rendering a realistic image of a 3D scene is one of the most stressful things you can ask a computer to do. For complicated scenes, this can take hours or even days of processor time, leaving a computer effectively useless until the render is complete. This is simply unacceptable for most CG artists – many of them resort to leaving their machines on overnight to finish renders.
Network rendering is the process of having multiple networked machines collaborate on the same project, with the sole purpose of bringing the processing time down. These banks are often known as a render farm, where each machine will render a full frame of an animation or, in the case of a still image, a tile of that image. There are several ways to run a render farm and many of the popular 3D packages have their own management solution.
This is the first in a series of articles that will look at the options available for network rendering in order to help you make an informed decision on which one to use. I will start by looking at the hardware requirements for a render farm, along with the best workflows for creating a scene using network rendering. Future articles will look at render farm management software including those that ship with popular content creation software as well as with third party solutions.
Currently, final renders are calculated using the CPU. While the field of GPU rendering is looking very promising for the future, it has yet to achieve widespread adoption. For this article, I will focus on CPU-based rendering as this is the industry standard. As I mentioned before, complex rendering will max out any CPU on the market for a significant amount of time. As these renders take so long even a small increase in CPU speed can mean saving a few minutes or even hours for a single frame. If you think that a typical animation will have 25-30 frames for every second, then increasing the speed of your cores can save quite a bit of time; increasing the amount of cores can save even more time. Most renderers are multi-threaded so rendering scales very linearly with respect to cores – going from 1 to 2 or 2 to 4 cores will equate to around 1.5 to 2 times the render speed.
Bearing this in mind, building a render farm is all about getting as many fast cores as you can. These need to be backed up by a decent amount of RAM as each machine will need to load the entire scene and any associated assets into the memory to achieve best performance. We recommend 1 to 4GB per CPU core depending on the type of software you are using and the complexity of your scenes. There is no requirement for any kind of graphics acceleration in a render farm machine and typically these machines are managed remotely, so are not even hooked up to monitors during day- to-day use. This means that you can get away with very basic onboard graphics as you will likely only use them during initial setup and troubleshooting of the machine.
That should have the heavy lifting covered. Another thing to consider is the networking hardware. For network rendering to work properly, the scene file and all its assets need to be stored on a network location that can be accessed by all of the nodes. Depending on the number of users and level of redundancy needed, this can be anything from a simple network attached hard drive to a full-blown RAID system. Quite a lot of data flows back and forth between render farm machines – the scene file and assets will be read from the file server and control messages will be sent between the worker machines, so a fast network is advisable. We recommend gigabit for general use or even something faster (like fibre channel) if you are rendering high definition video from After Effects or similar software.
That’s it for this installment. Next time we will look at software management solutions for all of this hardware.
You can find out more about network rendering, as well as all things 3D by getting in touch with our experts on 03332 409 309 or by emailing firstname.lastname@example.org. Visit us on Facebook and Twitter (@Jigsaw24Video).