3
$\begingroup$

I've got two machines: my developer-notebook for active working, and my standalone tower with a much better GPU. I'm simply using the tower for standalone tasks so I'm just working on it via RDP or other network-connections.

I'm now wondering how to speed up my rendering processes for my Blender processes using this secondary PC. I've already tried to use the Blender network-renderer, but since this add-on cannot use the GPU, I thing it's not the best way. I know there is also a old fork that is not in active development anymore that brings the ability to use the GPU via network, but neither seems like the best way. My next bet was to connect the secondary (tower) PC via shared folders where I push my Blender project into when ready to render, then load it by hand on the machine to start the render process. This seems to be very complicated and not very automatic, so for a lot of rendering tasks, it feels like a very slow workflow.

I've just heard about "sheep it" rendering farms, but I don't know if this is something interesting.

Both machines are using Nvidia-cards and running Windows 10.

How can I really speed up my rendering-process via network resources like described above?

$\endgroup$
3
$\begingroup$

Sheep-It! is a render farm service that is 100% free and works by using other people's computers to render your projects. It's a great service, and I would definitely recommend it. The only limitation with Sheep-It! is the 500mb project max size. If you don't want to or can't use Sheep-It!, I would recommend using this method:

Using a cloud storage client

This works with any cloud storage solution that can be installed locally, such as Dropbox or OneDrive. For this example I'm using Google Drive.

First, sign up for a Google account, if you don't already have one.

Then, install Google Drive on both of your computers.
The Google Drive program essentially creates a physical location on your PC that stores everything on your Google Drive, and syncs it. For example, if you installed in on a PC with hard drive D:, and a laptop with hard drive F:. If you had google drive on both computers.. D:\Google Drive and F:\Google Drive would sync with each other.

Once you have google drive installed on both Computers, make sure you're signed in to it. Once that's done, simply create a folder on your Google Drive where all your frames in your animation will render.

Then, once you're ready to render, copy the project files over to your other PC.

Final step is to set your animation to render .PNGs, and set the render output directory to the folder you created earlier on your Google Drive.
Disable Overwrite and enable Placeholders.

Then render animation, and when each frame is rendered, both computers will pick up on it and skip that frame, to begin working on the next one.

$\endgroup$
  • 6
    $\begingroup$ I think it's worth mentioning that this works with any cloud storage client that can be installed locally, e.g. Dropbox or OneDrive. The current answer makes it sound like Google Drive is the only solution, which isn't true. $\endgroup$ – Ray Mairlot Mar 3 '17 at 13:31
  • $\begingroup$ So just to get the idea: I just have to sync the render_ourput folders of both blender-instances and start the render process on both machines at the same time? Or what is the big deal on this solution? (Anyway sounds interesting ideed - just to make this clear :) ) $\endgroup$ – Marc M Mar 3 '17 at 14:04
  • 1
    $\begingroup$ @MarcM That is mostly correct. I recommend however starting the render on the 2nd machine once your first one is halfway through rendering the first frame. If they both start a frame at the exact same time, they'll be rendering the same frame since syncing isn't instant. Of course, that means you're just wasting one frame's worth of time, so it isn't too big of a deal. $\endgroup$ – Josh Silveous Mar 3 '17 at 14:06
  • $\begingroup$ @JoshSilveous The file size limit is not the only limitation Sheep-It has. While I love it for personal work, the lack of file encryption or other means of anti-theft security for .blend files makes it unsuitable for many commercial operations. $\endgroup$ – JakeD Mar 4 '17 at 1:27
  • 1
    $\begingroup$ @JoshSilveous Your "trick" to keep them from rendering the same frame is actually pointless. They don't both finish rendering each frame at the same time, and you're not going to go back in and re-sync (offset like you said) manually for each frame. There is no (applicable) difference between the first, second, etc. frames in this regard. $\endgroup$ – JakeD Mar 4 '17 at 1:35
2
$\begingroup$

Use the Loki Render to setup private render farm. This allows you to run Master on one PC and Slaves (called Grunts) on the others. All the clients can render single file from some shared network folder into some other shared render folder (or you can use OneDrive, GoogleDrive, Dropbox, you name it - but they sync slower).

This has the advantage, that when something happens (power outage, Blender crash, etc.), the non-finished frame will be discarded and another slave (grunt) will take the job.

Another advantage is that you manage the whole render job from 1 machine. You can setup Loki to start on other machines on start-up automatically.

Loki supports GPU rendering and also 'tile rendering', which distributes a single image into pieces for rendering, then re-assembles the final image. There is also LokiOnTheCloud.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.