There are several types of render farms, each of them with their strengths and weaknesses. I’m going to discuss the most accessible ones in a bit of detail.
Render Farm Pro’s and Con’s
Whether you build your own machines for rendering, or you rent computing time from an online render farm, there are costs involved. I will try summarizing the Pro’s and Con’s for each type in the table below:
Farm type |
Pro’s |
Con’s |
Distributed or collaborative |
|
|
DIY |
|
|
Rented computers in the cloud |
|
|
Online render farm |
|
|
And now let’s discuss each bullet point from the table in detail:
Distributed/collaborative farm
- It’s free. Jobs processed through this type of farm won’t cost you any money. There is however an indirect cost – the electric power used by your computer to render everybody else’s jobs.
- You need to make your machine available for others. In order to accumulate render credits in your account, you need to render someone else’s job. This means installing software on your machine that does this automatically when your computer is idle. In order for it to work, you need to leave your computer running even when you’re not using it.
- Your data becomes public. Because the rendering happens on other people’s computers, your file will have to be downloaded there in order to be processed. And once a file is on somebody’s computer, they might have access to it.
- Long waiting queues. The cases in which this kind of farm has immediate availability are quite rare. In fact, at the moment of writing this article (January 2014), renderfarm.fi was rendering the queue from February 2013 – 11 months ago!
- Inconsistent results. Because the farm has no control over how many computers are in the network at a given time, you may render today on 10 computers, and tomorrow on only 2. The computers from the network are also of very different configurations, and this leads to big variances in performance.
DIY farm
- One time payment: once you made the initial purchase, you own the hardware and can use it as often as you like – 24/7 even if that’s what you need – and pay only the electricity bill.
- 100% customized for your needs. Since you are building it, you can setup it any way you like. You can build your computer in a furniture cabinet to match the rest of your room. Or you can use a dedicated space to host a server rack. Plus, you can get the latest and greatest hardware – provided that your budget can accommodate it.
- You need to make an investment beforehand. Buying a top of the line computer has always been expensive. As a general rule, a PC with the latest generation CPU, a pair of top of the line GPUs and a decent amount of RAM will cost around $4,000. If you want to go pro (read Nvidia Tesla series, server chassis, redundant power, etc), you can easily get to double that figure. But let’s go for the smaller amount – if you need more than one machine to get the results you need, you have to multiply that budget. You know your specifics; it’s up to you to do the math.
- You need some tech skills for the initial setup. Let’s start with the hardware: you may configure the entire rig from a manufacturer like Cyberpower Pc, and they will just ship it to your house. Or you can shop for individual components looking for better pricing, in which case you will need to do all the assembly by yourself. Once the rig is functional, you need to install an operating system, the drivers and the rendering software. And the final step is setting up the render farm software. You may use 3D software that has the feature built-in, and you just have to configure it. Or you may need to install 3rd party management software that will distribute your work to all the machines.
- The machines may impact your work environment. Each additional machine will require some space and will generate noise and heat. The degree of noise depends on the actual configuration used, and can go up to 50dB or even 60dB for a server or a loud gaming machine. Also, each machine generates heat while running. A high-end PC under load can easily dissipate over 500W of heat – that’s the same amount of heat generated by 5 persons doing desk work. If you have a lot of rendering machines, you may need to re-consider your cooling needs for the room.
- Doing your own debugging. A machine used for long periods of time at 100% load may overheat and shutdown or lock up. Or a hard disk may fail, or a stick of memory. These things happen, and if they do, you need to know how to fix them. And if something like this happens just hours before your deadline, you need to know to fix them fast.
Rented computers in the cloud
- You get access to significant hardware resources. When you create an account with a cloud provider, you get access to a large number of servers in a lot of configurations (virtual or bare-metal, depending on the provider).
- You pay a lower hourly cost, compared to an online farm. This is because you are basically renting infrastructure and not a rendering service. You have to know how to make that infrastructure work for you, but if you do, you can shave a percentage off the total cost of rendering.
- Paid solution. All that infrastructure comes at a cost. Depending on each cloud provider’s policy, you can rent machines by the hour or monthly. Prices start low for small machines (1 core CPU), and go up as the hardware gets better. You also need to pay attention to the definition of a ‘core’, as it may vary from provider to provider.
- You need significant tech skills to make it work. It’s true, you can get access to all that hardware, but you have to make it work in the way you need it. And this goes beyond just installing the operating system and 3D software – you need to know how to build an image and distribute it to all the machines, how to use the machines together, how to protect them from being accessed by a 3rd party, and so on. Also, in most cases, you need to do a bit of programming as well – think DevOps.
- You need a good understanding of the cloud concept to get optimal results. While all cloud platforms offer similar services, each one has its own peculiarities. Access to machines can be limited, the pricing scheme is more complicated – you get billed separately for the machines, for the storage, for the bandwidth and in some cases for the IP addresses. Also, you need to determine which machine has the best price performance ratio, and do this on a periodical basis, as prices change. Plus, some of the cloud resources may be volatile by nature.
- The time investment can be significant. Even having all the knowledge, you have to invest quite some time. The initial setup is always a bit tricky, and documentation for cloud usage can be unfriendly at times. Also, if something goes south, you need to take the time to understand what caused it before you start fixing it.
Online render farm
- Immediate access to resources. When you submit a project for rendering to a farm, it will get distributed to their server pool. This means that, for the duration of the rendering, you get to use their infrastructure, without having to purchase all those servers. A typical server in a render farm costs over $4,500. If your animation renders on 20 servers, you are accessing hardware worth over $90,000. And if your workload has periods of time when you need lots of resources for a short time (for instance when you work 3 months on an animation and then need to render it), it may just be the optimal solution.
- Fast. Having all that hardware at your disposal means that the rendering will be significantly faster. One individual server from a farm is faster than the average home computer, and a farm can allocate hundreds of them if needed. So your rendering speed may just go hypersonic. Of course, you pay for that, but if you need it fast, you can get it.
- Avoid workload spikes. A farm typically has a lot of available machines, so allocating 10 or 100 to a project is pretty much the same thing. Plus, a farm can render several projects in parallel.
- You receive an invoice for the service. This means that you can justify (and pass) the rendering costs to your client.
- Paid solution. You do get access to all these resources, but you have to pay for them. The pricing is typically per computing hour (may it be on server-hour, core-hour or GHz-hour). You use more computing hours, you pay more computing hours. Also, farms usually have different pricing plans, depending on how many resources you need and how fast do you want your job queued. The basic principle is the same: you need more, you pay for more.
- It has a learning curve. As with every web application or software, you need to learn how to use a farm. That typically includes preparing your files (packing up textures, media files, scenes, etc) and uploading them to the farm. The process may vary because every farm has its own interface. The good news is that newer render farms are making this process very easy to understand, so they can be used by people that are not tech-savvy.
Have any questions about the subject? Ask away in the comments.
Related articles on render farms:
1. What is a render farm?
2. Start using a render farm
3. Render farms costs & pricing
4. How does a render farm work