How I overcame hardware limitations for rendering in Blender

November 8, 2022

I feel like I’ve discovered a holy grail of some sorts. My computer is not a very recent one. It’s a Core i7, but from an early generation, and it has 32 gigs of RAM. And most importantly for rendering, it has an Nvidia Titan X graphics card. This card is a couple of years old. Unfortunately, I don’t have the luxury at the moment to buy a new pc or graphics card, so I’ve learned to accept the fact that my computer is not able to render very large scenes in Blender. I often have to spend time on reducing the size of textures for scenes that are getting really large. When a scene is too big for the 32 gigs of RAM that I try to render, Blender will either show me an error that CUDA has run out of memory, or it will just completely crash. When this happens, my graphics card has something of a hick up, which disables all but one of my monitors. Typically, that also crashes all the other apps I have opened at that moment. Occasionally it will even treat me with a blue screen. Not cool. And frustrating as hell. But like I already mentioned, I sort of, almost accepted all of this since there’s not a lot I can do about it right now.

Since I have an extra computer, I decided to hook it up and see if I could somehow use it for rendering. This is also an early Core i7, with 16 gigs of RAM, and an Nvidia 1050 Ti. This graphics card isn’t great, but it can render! So I started to use this machine occasionally, to perform renders while I could still keep on working on my main computer. I did this manually at first, and that means I had to copy the blend file over to the other machine, or mess around with mapped network drives. I had to pay close attention to keep the folder structure identical etc. All together, a lot of mouse-clicks that felt like a hassle, and not very productive. So that’s why I consulted the almighty internet and asked if it could help me out. And it did!

Of course, I already knew about, and fooled around a bit with 3rd party render farms. Google kept pointing me in that direction, but I didn’t like it. Call me a typical Dutch person if you will, but I just don’t like spending money on these 3rd party render companies, since I’m merely an amateur who’s dabbles in 3D as a hobby. So my quest continued. At some point, not that long ago in fact, I discovered this super awesome app named Deadline. I’m not a promoter of any sort, so unfortunately nobody is paying me to promote anything, but I do realize that I may sound like a promoter. I’m not, I promise. Deadline is simply enough just an awesome app, that is free, and it might very well be awesome for you as well! The only requirement is that you have an account for Amazon’s AWS environment, because that’s where you need to download the setup files from. Simply click on Download in the top menu on the official website for Deadline here: https://www.awsthinkbox.com/deadline. It’s a 1,2 GB download.

I believe it was through a YouTube video that I learned that there are plenty of options to set up slave-rendering nodes, at home, and that this can be accomplished completely for free. I heard in that video that Amazon has made their Deadline product free, but only for a maximum of two render nodes. (update: I read somewhere that you can now use up to 10 nodes for free!)

Since I have the two computers, I thought I’d give Deadline a try. I did not get it up and running as fast as I had hoped. I did have to invest some time in getting to learn the app to fully understand it. But through some trial and errors, I did later on that same day accomplish to build a render “farm”, at home, using my two computers. First thing I thought to myself was that I should have done this a lot sooner! So yeah, it’s definitely a keeper! In the end, this setup resulted in me being very happy. But that’s not all! I wouldn’t have written this post if it ended there.

The thing that made me even happier was when I found out that scenes that would not render on my machine anymore, would actually render just fine when I rendered them through Deadline. Several scenes, that I had built in the past, had gotten too large to be handled properly by my computer. They would always end with an error message, or with my pc hanging/crashing when I clicked render. While I was checking the amount of resources Deadline was consuming, I realized that I should try to render something that I couldn’t render before. Just to see if they would now miraculously render. And I was really surprised that I almost jumped off my chair when I saw that I could now render a lot of things that I still have stored in my hard drive.

I figured out later on that the fact that Deadline has no issues rendering these larger scenes does make sense, in a way. Whenever you send a render job to the Deadline worker client directly from inside Blender (using an add-on), you can safely shut down Blender completely once the job is submitted. So all those gigs of ram that Blender consumes when a large scene is loaded, even when idle, become available to the Deadline worker agent who takes care of completing the render job. The worker agent sort of acts like a man-in-the-middles, between me, and the Blender render engine. And since it can communicate with Blender just fine in the background using nothing more than python commands, the graphical user interface that I, the user, requires, does not need to be loaded. And I guess that’s what made the difference for me, and why I can now render scenes that I otherwise couldn’t. But this theory is just my reasoning. Honestly, I have absolutely no idea what I’m talking about. But it makes sense though. In fact, I don’t even care what the exact reason is behind this, I’m just happy with the fact that it does.

You can imagine that the last couple of days, I’ve been continuously rendering out scenes that I had previously given up on. The results are sometimes good, and other times surprisingly bad, but always interesting, to me, to learn from past made mistakes. At least I can finally render them now! So, without having performed any upgrades to my hardware, it still feels that I did get a huge upgrade right now. My earlier acquired level of happiness has now increased with some additional happiness. Now, this still doesn’t make me annoyingly, or over-the-top happy, in fact I’m still miserable, but this does make me a lot less miserable. So at least I’ve that going for me, which is nice.

I figured that my findings might be useful to other people out there, who relate to struggles with hardware limitations. Did I already mention that Deadline is not developed specifically for Blender? Blender is just one of the many creative apps that are supported by Deadline. Some big names that are also supported are 3DSmax, Unreal Engine, Maya, Adobe After Effects, ffMpeg, Houdini, Cinema 4D, SKetchUp, Fusion, Nuke, and actually there’a too many to list here. So, here’s the long list of supported apps: https://docs.thinkboxsoftware.com/products/deadline/10.1/1_User%20Manual/manual/supported-software.html

Setting it up is not difficult, but it does take some time if you are unfamiliar with it. My advice is to watch a guide on how to do this on YouTube, or follow the very well written documentation on the official website. If you decide to put in the effort, I promise you that you will not regret it! Good luck!

  linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram