The term render farm, in the context of computer-generated image rendering, refers to a set of computers of particularly high computing performance that are most often used to produce visual effects in cinema, three-dimensional modelling for architectural demos, and even cartoon animation frames.
Render farms are primarily created or rented by animation studios and architectural firms so as to facilitate their work, allowing a great deal of computations to be performed in a relatively short amount of time and at a level of which cannot be easily replicated by any one single computer system.
A render farm, by technical definition, is a set of computer nodes configured to compute at a parallel level, wherein animation and rendering is produced on a frame by frame basis utilizing the separated but organized processing power of each individual computer system.
How Does a Render Farm Work?
A render farm is primarily facilitated by the delegation of computational tasks to each individual computer that is part of the render farm network.
Generally, a render farm queue managing software will instruct each computer as to the tasks required in order to render the animation, usually in the form of a single frame at a time. This automated form of delegation allows the render farm- at least to our human perspective- to perform the extremely complex calculations needed for per-frame sophisticated image rendering to occur nearly simultaneously.
Even in the event that the render farm’s computers have not been tasked with creating an image frame, their processing power may still be used in a variety of other ways, such as tasking them to render simply a small portion of a frame, several frames at once, or something with a non-visual output, such as physics engine simulations.
Unless the particular entity in control of the render farm has created the computer system network themselves, it is likely that the render farm is run and managed by proprietary software generally found to be server-side and otherwise only receives external input through controlled means from the client says Render Vision, a Melbourne-based rendering studio.
This is all the more applicable with the development of high-speed network render farms that do not require the client to be physically present with the render farm and may instead simply upload their unrendered work to a cloud storage network.
If the client has not simply purchased the render farm outright, it is most likely that the rendering farm’s proprietary owners will grant temporary software licenses to the client, especially if the farm must be physically set up away from their usual base of function, so as to facilitate legal use of the render farm and its computer programs.
What Is Render Capacity?
Render capacity refers to the total processing power capable of being exerted by the render farm when fully operational. This particular statistic is of vital importance both to clients and the render farm’s firm as it refers to the speed and efficiency of which the render farm is able to work at.
A variety of factors may affect the particular render capacity of any one render farm system, with things like an excessive workload, insufficient processing power or even simply the ambient temperature of the server room adding to the length of time it may take to complete a single render operation.
Naturally, the relative quality of the rendering operation and its subsequent complexity will also increase the exact length of time it will take to bring to completion, with higher resolution images or three-dimensional renderings with excessive levels of post processing effects taking a significantly longer time to finish than simple two-dimensional single frame renderings.
As technology progresses, so do the industry standards for rendering capacity, with what was once a state of the art rendering farm being reduced to an outdated processing system unable to keep up with newly developed technology.
As such, rendering farms are continuously updated and its related software optimized to the absolute maximum. Even at a physical level, parts are often switched out as soon as new technology is approved for use in the rendering industry.
How are Render Farms Managed?
At a software level, render farms dictate the process of rendering through specialized software referred to as “queue managers”, either built into the particular rendering software the farm is utilizing or through an external program that acts directly on each individual computer in the network.
While this particular type of specialized software is not exactly needed, usually in relatively small render farms, it is far more efficient than manually dictating tasks to each and every local machine connected to the system.
Local or On-site Render Farm Management
This is especially true in render farms that use a loose network of machines that do not completely involve local machines, wherein factors such as slow connection and hardware differences make manual task dictation difficult.
However, if the render farm has all or most machines assembled and present on site or in close enough proximity to each other that a high-speed internet connection is not needed, queue management software is an excellent dictation solution.
As previously mentioned, render farms do not always need to dictate a frame render, and can otherwise command a computer to perform a variety of tasks that do not directly involve the compounding of a frame or post process effect.
The queue manager software is most often present on every single machine that is part of the network as well as an off-site or separate server that performs the computations required to dictate the tasks to said machines. This is done both to facilitate network communication between the computers as well as to reduce the processing impact of the software on the rendering farm’s primary rendering computers.
Cloud Render Farm Management
However, in the case of render farms that do not have all of most of their processing computers physically present on site or within close enough proximity to one another, certain options are presented that both facilitate the function of the render farm as well as communication between the machines and their prospective owners.
One of the key features related to these off-site render farms is an altered form of compensation billing that is given to the client, with advantages such as usage statistics and direct processing time and power utilization being reported both on the invoice and as an informational disclosure to the client that may lease the service.
Another key feature is the concept of crowd sourced processing power, wherein users may donate or be compensated for the usage of their personal machine as part of a network that utilizes their combined hardware to form a disjointed cloud render farm, much like a zombie botnet without the malicious implications involved.
However, this is quite uncommon, owing to the difficulty in synchronizing non-specially purposed processing machines with widely differing software and hardware. Apart from this, a crowd sourced render farm is also considered to be quite insecure, both for the client and the users’ machines.
Do You Need a Render Farm?
Choosing to utilize a render farm in order to facilitate production of a rendering project or similar special use project is oftentimes an excellent choice, as it will not only safe the client money but also time, as the vast majority of render farms are run by experienced professionals with redundancies in place if any unfortunate events may come to pass.
This is especially paramount in the case of projects with hard deadlines wherein any late production of the product may be disastrous for the client. The use of a render farm not only accelerates the process of rendering but also completes it in a far more professional manner than would be possible for an amateur renderer.
How Long Do Render Farms Take?
While the particular time any type of rendering project will be completed depends on a variety of factors such as post processing effects, complexity, as well as the total available processing power related to the client, generally render farms are far more efficient and swifter than that of any ordinary lone computer.
Keep in mind that rendering is generally done on a frame to frame basis wherein a single machine is tasked with creating one frame at a time, meaning that the parallel processing accomplished by using multiple rendering machines at once far outclasses that of any single rendering machine, even if said machine is technologically more advanced to an extent.
Why Do Computers Take a Long Time to Render?
Though it is true that the length of time any one computer will take to render a scene or frame depends on its particular hardware and the complexity of the render, it is without a doubt one of the most memory and processor intensive activities a computer or network of computers may perform.
This is due to the fact that photorealistic rendering involves a massive level of detail that the untrained eye is not able to discern but can immediately identify if it is missing in a render. Such things like reflections, light diffraction, anti-aliased shadows and raytracing are all paramount to creating a realistic and aesthetically pleasing render.
References
1. Flavell, Lance (2011). Beginning Blender: Open Source 3D Modeling, Animation, and Game Design. Apress. p. 374. ISBN 9781430231271.
2. J. Ruby Annette, W. Aisha Banu, P. Subash Chandran, Rendering-as-a-Service: Taxonomy and Comparison, Procedia Computer Science, Volume 50, 2015, Pages 276-281, ISSN 1877-0509, https://doi.org/10.1016/j.procs.2015.04.048.
3. Yao, Jiali & Pan, Zhigeng & Zhang, Hongxin. (2009). A Distributed Render Farm System for Animation Production. 5709. 264-269. 10.1007/978-3-642-04052-8_31.